AceTimeC  0.8.0
Date and time library in C that supports timezones from the TZ Database.
zone_infos.c
1 // This file was generated by the following script:
2 //
3 // $ /home/brian/src/AceTimeTools/src/acetimetools/tzcompiler.py
4 // --input_dir /home/brian/src/AceTimeC/src/zonedball/tzfiles
5 // --output_dir /home/brian/src/AceTimeC/src/zonedball
6 // --tz_version 2023c
7 // --action zonedb
8 // --language c
9 // --scope extended
10 // --db_namespace AtcAll
11 // --offset_granularity 1
12 // --delta_granularity 60
13 // --until_at_granularity 1
14 // --generate_int16_years
15 // --generate_hires
16 // --start_year 1800
17 // --until_year 10000
18 // --nocompress
19 //
20 // using the TZ Database files
21 //
22 // africa
23 // antarctica
24 // asia
25 // australasia
26 // backward
27 // etcetera
28 // europe
29 // northamerica
30 // southamerica
31 //
32 // from https://github.com/eggert/tz/releases/tag/2023c
33 //
34 // Supported Zones: 596 (350 zones, 246 links)
35 // Unsupported Zones: 0 (0 zones, 0 links)
36 //
37 // Original Years: [1844,2087]
38 // Generated Years: [1844,2087]
39 // Estimator Years: [1800,2090]
40 // Max Buffer Size: 8
41 //
42 // Records:
43 // Infos: 596
44 // Eras: 1949
45 // Policies: 134
46 // Rules: 2238
47 //
48 // Memory (8-bits):
49 // Rules: 26856
50 // Policies: 402
51 // Eras: 29235
52 // Zones: 4550
53 // Links: 3198
54 // Registry: 1192
55 // Formats: 1032
56 // Letters: 160
57 // Fragments: 0
58 // Names: 9076 (original: 9076)
59 // TOTAL: 75701
60 //
61 // Memory (32-bits):
62 // Rules: 26856
63 // Policies: 1072
64 // Eras: 38980
65 // Zones: 8400
66 // Links: 5904
67 // Registry: 2384
68 // Formats: 1032
69 // Letters: 216
70 // Fragments: 0
71 // Names: 9076 (original: 9076)
72 // TOTAL: 93920
73 //
74 // DO NOT EDIT
75 
76 #include "zone_policies.h"
77 #include "zone_infos.h"
78 
79 //---------------------------------------------------------------------------
80 // ZoneContext (should not be in PROGMEM)
81 //---------------------------------------------------------------------------
82 
83 static const char kAtcTzDatabaseVersion[] = "2023c";
84 
85 static const char * const kAtcFragments[] = {
86 /*\x00*/ NULL,
87 
88 };
89 
90 static const char* const kAtcLetters[] = {
91 /*0*/ "",
92 /*1*/ "+00",
93 /*2*/ "+02",
94 /*3*/ "+05",
95 /*4*/ "-0430",
96 /*5*/ "-0530",
97 /*6*/ "BDST",
98 /*7*/ "BST",
99 /*8*/ "CAT",
100 /*9*/ "CDT",
101 /*10*/ "CPT",
102 /*11*/ "CST",
103 /*12*/ "CWT",
104 /*13*/ "D",
105 /*14*/ "DD",
106 /*15*/ "EDT",
107 /*16*/ "EST",
108 /*17*/ "GMT",
109 /*18*/ "M",
110 /*19*/ "MDST",
111 /*20*/ "MMT",
112 /*21*/ "MSD",
113 /*22*/ "MSK",
114 /*23*/ "MST",
115 /*24*/ "P",
116 /*25*/ "S",
117 /*26*/ "W",
118 /*27*/ "WAT",
119 
120 };
121 
122 const AtcZoneContext kAtcAllZoneContext = {
123  1800 /*start_year*/,
124  10000 /*until_year*/,
125  8 /*max_transitions*/,
126  kAtcTzDatabaseVersion /*tz_version*/,
127  1 /*num_fragments*/,
128  28 /*num_letters*/,
129  kAtcFragments /*fragments*/,
130  kAtcLetters /*letters*/,
131 };
132 
133 //---------------------------------------------------------------------------
134 // Zones: 350
135 // Eras: 1949
136 //---------------------------------------------------------------------------
137 
138 //---------------------------------------------------------------------------
139 // Zone name: Africa/Abidjan
140 // Zone Eras: 2
141 //---------------------------------------------------------------------------
142 
143 static const AtcZoneEra kAtcZoneEraAfrica_Abidjan[] = {
144  // -0:16:08 - LMT 1912
145  {
146  NULL /*zone_policy*/,
147  "LMT" /*format*/,
148  -65 /*offset_code (-968/15)*/,
149  7 /*offset_remainder (-968%15)*/,
150  0 /*delta_minutes*/,
151  1912 /*until_year*/,
152  1 /*until_month*/,
153  1 /*until_day*/,
154  0 /*until_time_code (0/15)*/,
155  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
156  },
157  // 0:00 - GMT
158  {
159  NULL /*zone_policy*/,
160  "GMT" /*format*/,
161  0 /*offset_code (0/15)*/,
162  0 /*offset_remainder (0%15)*/,
163  0 /*delta_minutes*/,
164  32767 /*until_year*/,
165  1 /*until_month*/,
166  1 /*until_day*/,
167  0 /*until_time_code (0/15)*/,
168  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
169  },
170 
171 };
172 
173 static const char kAtcZoneNameAfrica_Abidjan[] = "Africa/Abidjan";
174 
175 const AtcZoneInfo kAtcAllZoneAfrica_Abidjan = {
176  kAtcZoneNameAfrica_Abidjan /*name*/,
177  0xc21305a3 /*zone_id*/,
178  &kAtcAllZoneContext /*zone_context*/,
179  2 /*num_eras*/,
180  kAtcZoneEraAfrica_Abidjan /*eras*/,
181  NULL /*target_info*/,
182 };
183 
184 //---------------------------------------------------------------------------
185 // Zone name: Africa/Algiers
186 // Zone Eras: 10
187 //---------------------------------------------------------------------------
188 
189 static const AtcZoneEra kAtcZoneEraAfrica_Algiers[] = {
190  // 0:12:12 - LMT 1891 Mar 16
191  {
192  NULL /*zone_policy*/,
193  "LMT" /*format*/,
194  48 /*offset_code (732/15)*/,
195  12 /*offset_remainder (732%15)*/,
196  0 /*delta_minutes*/,
197  1891 /*until_year*/,
198  3 /*until_month*/,
199  16 /*until_day*/,
200  0 /*until_time_code (0/15)*/,
201  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
202  },
203  // 0:09:21 - PMT 1911 Mar 11
204  {
205  NULL /*zone_policy*/,
206  "PMT" /*format*/,
207  37 /*offset_code (561/15)*/,
208  6 /*offset_remainder (561%15)*/,
209  0 /*delta_minutes*/,
210  1911 /*until_year*/,
211  3 /*until_month*/,
212  11 /*until_day*/,
213  0 /*until_time_code (0/15)*/,
214  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
215  },
216  // 0:00 Algeria WE%sT 1940 Feb 25 2:00
217  {
218  &kAtcAllZonePolicyAlgeria /*zone_policy*/,
219  "WE%T" /*format*/,
220  0 /*offset_code (0/15)*/,
221  0 /*offset_remainder (0%15)*/,
222  0 /*delta_minutes*/,
223  1940 /*until_year*/,
224  2 /*until_month*/,
225  25 /*until_day*/,
226  480 /*until_time_code (7200/15)*/,
227  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
228  },
229  // 1:00 Algeria CE%sT 1946 Oct 7
230  {
231  &kAtcAllZonePolicyAlgeria /*zone_policy*/,
232  "CE%T" /*format*/,
233  240 /*offset_code (3600/15)*/,
234  0 /*offset_remainder (3600%15)*/,
235  0 /*delta_minutes*/,
236  1946 /*until_year*/,
237  10 /*until_month*/,
238  7 /*until_day*/,
239  0 /*until_time_code (0/15)*/,
240  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
241  },
242  // 0:00 - WET 1956 Jan 29
243  {
244  NULL /*zone_policy*/,
245  "WET" /*format*/,
246  0 /*offset_code (0/15)*/,
247  0 /*offset_remainder (0%15)*/,
248  0 /*delta_minutes*/,
249  1956 /*until_year*/,
250  1 /*until_month*/,
251  29 /*until_day*/,
252  0 /*until_time_code (0/15)*/,
253  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
254  },
255  // 1:00 - CET 1963 Apr 14
256  {
257  NULL /*zone_policy*/,
258  "CET" /*format*/,
259  240 /*offset_code (3600/15)*/,
260  0 /*offset_remainder (3600%15)*/,
261  0 /*delta_minutes*/,
262  1963 /*until_year*/,
263  4 /*until_month*/,
264  14 /*until_day*/,
265  0 /*until_time_code (0/15)*/,
266  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
267  },
268  // 0:00 Algeria WE%sT 1977 Oct 21
269  {
270  &kAtcAllZonePolicyAlgeria /*zone_policy*/,
271  "WE%T" /*format*/,
272  0 /*offset_code (0/15)*/,
273  0 /*offset_remainder (0%15)*/,
274  0 /*delta_minutes*/,
275  1977 /*until_year*/,
276  10 /*until_month*/,
277  21 /*until_day*/,
278  0 /*until_time_code (0/15)*/,
279  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
280  },
281  // 1:00 Algeria CE%sT 1979 Oct 26
282  {
283  &kAtcAllZonePolicyAlgeria /*zone_policy*/,
284  "CE%T" /*format*/,
285  240 /*offset_code (3600/15)*/,
286  0 /*offset_remainder (3600%15)*/,
287  0 /*delta_minutes*/,
288  1979 /*until_year*/,
289  10 /*until_month*/,
290  26 /*until_day*/,
291  0 /*until_time_code (0/15)*/,
292  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
293  },
294  // 0:00 Algeria WE%sT 1981 May
295  {
296  &kAtcAllZonePolicyAlgeria /*zone_policy*/,
297  "WE%T" /*format*/,
298  0 /*offset_code (0/15)*/,
299  0 /*offset_remainder (0%15)*/,
300  0 /*delta_minutes*/,
301  1981 /*until_year*/,
302  5 /*until_month*/,
303  1 /*until_day*/,
304  0 /*until_time_code (0/15)*/,
305  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
306  },
307  // 1:00 - CET
308  {
309  NULL /*zone_policy*/,
310  "CET" /*format*/,
311  240 /*offset_code (3600/15)*/,
312  0 /*offset_remainder (3600%15)*/,
313  0 /*delta_minutes*/,
314  32767 /*until_year*/,
315  1 /*until_month*/,
316  1 /*until_day*/,
317  0 /*until_time_code (0/15)*/,
318  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
319  },
320 
321 };
322 
323 static const char kAtcZoneNameAfrica_Algiers[] = "Africa/Algiers";
324 
325 const AtcZoneInfo kAtcAllZoneAfrica_Algiers = {
326  kAtcZoneNameAfrica_Algiers /*name*/,
327  0xd94515c1 /*zone_id*/,
328  &kAtcAllZoneContext /*zone_context*/,
329  10 /*num_eras*/,
330  kAtcZoneEraAfrica_Algiers /*eras*/,
331  NULL /*target_info*/,
332 };
333 
334 //---------------------------------------------------------------------------
335 // Zone name: Africa/Bissau
336 // Zone Eras: 3
337 //---------------------------------------------------------------------------
338 
339 static const AtcZoneEra kAtcZoneEraAfrica_Bissau[] = {
340  // -1:02:20 - LMT 1912 Jan 1 1:00u
341  {
342  NULL /*zone_policy*/,
343  "LMT" /*format*/,
344  -250 /*offset_code (-3740/15)*/,
345  10 /*offset_remainder (-3740%15)*/,
346  0 /*delta_minutes*/,
347  1912 /*until_year*/,
348  1 /*until_month*/,
349  1 /*until_day*/,
350  240 /*until_time_code (3600/15)*/,
351  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
352  },
353  // -1:00 - -01 1975
354  {
355  NULL /*zone_policy*/,
356  "-01" /*format*/,
357  -240 /*offset_code (-3600/15)*/,
358  0 /*offset_remainder (-3600%15)*/,
359  0 /*delta_minutes*/,
360  1975 /*until_year*/,
361  1 /*until_month*/,
362  1 /*until_day*/,
363  0 /*until_time_code (0/15)*/,
364  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
365  },
366  // 0:00 - GMT
367  {
368  NULL /*zone_policy*/,
369  "GMT" /*format*/,
370  0 /*offset_code (0/15)*/,
371  0 /*offset_remainder (0%15)*/,
372  0 /*delta_minutes*/,
373  32767 /*until_year*/,
374  1 /*until_month*/,
375  1 /*until_day*/,
376  0 /*until_time_code (0/15)*/,
377  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
378  },
379 
380 };
381 
382 static const char kAtcZoneNameAfrica_Bissau[] = "Africa/Bissau";
383 
384 const AtcZoneInfo kAtcAllZoneAfrica_Bissau = {
385  kAtcZoneNameAfrica_Bissau /*name*/,
386  0x75564141 /*zone_id*/,
387  &kAtcAllZoneContext /*zone_context*/,
388  3 /*num_eras*/,
389  kAtcZoneEraAfrica_Bissau /*eras*/,
390  NULL /*target_info*/,
391 };
392 
393 //---------------------------------------------------------------------------
394 // Zone name: Africa/Cairo
395 // Zone Eras: 2
396 //---------------------------------------------------------------------------
397 
398 static const AtcZoneEra kAtcZoneEraAfrica_Cairo[] = {
399  // 2:05:09 - LMT 1900 Oct
400  {
401  NULL /*zone_policy*/,
402  "LMT" /*format*/,
403  500 /*offset_code (7509/15)*/,
404  9 /*offset_remainder (7509%15)*/,
405  0 /*delta_minutes*/,
406  1900 /*until_year*/,
407  10 /*until_month*/,
408  1 /*until_day*/,
409  0 /*until_time_code (0/15)*/,
410  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
411  },
412  // 2:00 Egypt EE%sT
413  {
414  &kAtcAllZonePolicyEgypt /*zone_policy*/,
415  "EE%T" /*format*/,
416  480 /*offset_code (7200/15)*/,
417  0 /*offset_remainder (7200%15)*/,
418  0 /*delta_minutes*/,
419  32767 /*until_year*/,
420  1 /*until_month*/,
421  1 /*until_day*/,
422  0 /*until_time_code (0/15)*/,
423  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
424  },
425 
426 };
427 
428 static const char kAtcZoneNameAfrica_Cairo[] = "Africa/Cairo";
429 
430 const AtcZoneInfo kAtcAllZoneAfrica_Cairo = {
431  kAtcZoneNameAfrica_Cairo /*name*/,
432  0x77f8e228 /*zone_id*/,
433  &kAtcAllZoneContext /*zone_context*/,
434  2 /*num_eras*/,
435  kAtcZoneEraAfrica_Cairo /*eras*/,
436  NULL /*target_info*/,
437 };
438 
439 //---------------------------------------------------------------------------
440 // Zone name: Africa/Casablanca
441 // Zone Eras: 5
442 //---------------------------------------------------------------------------
443 
444 static const AtcZoneEra kAtcZoneEraAfrica_Casablanca[] = {
445  // -0:30:20 - LMT 1913 Oct 26
446  {
447  NULL /*zone_policy*/,
448  "LMT" /*format*/,
449  -122 /*offset_code (-1820/15)*/,
450  10 /*offset_remainder (-1820%15)*/,
451  0 /*delta_minutes*/,
452  1913 /*until_year*/,
453  10 /*until_month*/,
454  26 /*until_day*/,
455  0 /*until_time_code (0/15)*/,
456  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
457  },
458  // 0:00 Morocco +00/+01 1984 Mar 16
459  {
460  &kAtcAllZonePolicyMorocco /*zone_policy*/,
461  "+00/+01" /*format*/,
462  0 /*offset_code (0/15)*/,
463  0 /*offset_remainder (0%15)*/,
464  0 /*delta_minutes*/,
465  1984 /*until_year*/,
466  3 /*until_month*/,
467  16 /*until_day*/,
468  0 /*until_time_code (0/15)*/,
469  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
470  },
471  // 1:00 - +01 1986
472  {
473  NULL /*zone_policy*/,
474  "+01" /*format*/,
475  240 /*offset_code (3600/15)*/,
476  0 /*offset_remainder (3600%15)*/,
477  0 /*delta_minutes*/,
478  1986 /*until_year*/,
479  1 /*until_month*/,
480  1 /*until_day*/,
481  0 /*until_time_code (0/15)*/,
482  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
483  },
484  // 0:00 Morocco +00/+01 2018 Oct 28 3:00
485  {
486  &kAtcAllZonePolicyMorocco /*zone_policy*/,
487  "+00/+01" /*format*/,
488  0 /*offset_code (0/15)*/,
489  0 /*offset_remainder (0%15)*/,
490  0 /*delta_minutes*/,
491  2018 /*until_year*/,
492  10 /*until_month*/,
493  28 /*until_day*/,
494  720 /*until_time_code (10800/15)*/,
495  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
496  },
497  // 1:00 Morocco +01/+00
498  {
499  &kAtcAllZonePolicyMorocco /*zone_policy*/,
500  "+01/+00" /*format*/,
501  240 /*offset_code (3600/15)*/,
502  0 /*offset_remainder (3600%15)*/,
503  0 /*delta_minutes*/,
504  32767 /*until_year*/,
505  1 /*until_month*/,
506  1 /*until_day*/,
507  0 /*until_time_code (0/15)*/,
508  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
509  },
510 
511 };
512 
513 static const char kAtcZoneNameAfrica_Casablanca[] = "Africa/Casablanca";
514 
515 const AtcZoneInfo kAtcAllZoneAfrica_Casablanca = {
516  kAtcZoneNameAfrica_Casablanca /*name*/,
517  0xc59f1b33 /*zone_id*/,
518  &kAtcAllZoneContext /*zone_context*/,
519  5 /*num_eras*/,
520  kAtcZoneEraAfrica_Casablanca /*eras*/,
521  NULL /*target_info*/,
522 };
523 
524 //---------------------------------------------------------------------------
525 // Zone name: Africa/Ceuta
526 // Zone Eras: 9
527 //---------------------------------------------------------------------------
528 
529 static const AtcZoneEra kAtcZoneEraAfrica_Ceuta[] = {
530  // -0:21:16 - LMT 1901 Jan 1 0:00u
531  {
532  NULL /*zone_policy*/,
533  "LMT" /*format*/,
534  -86 /*offset_code (-1276/15)*/,
535  14 /*offset_remainder (-1276%15)*/,
536  0 /*delta_minutes*/,
537  1901 /*until_year*/,
538  1 /*until_month*/,
539  1 /*until_day*/,
540  0 /*until_time_code (0/15)*/,
541  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
542  },
543  // 0:00 - WET 1918 May 6 23:00
544  {
545  NULL /*zone_policy*/,
546  "WET" /*format*/,
547  0 /*offset_code (0/15)*/,
548  0 /*offset_remainder (0%15)*/,
549  0 /*delta_minutes*/,
550  1918 /*until_year*/,
551  5 /*until_month*/,
552  6 /*until_day*/,
553  5520 /*until_time_code (82800/15)*/,
554  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
555  },
556  // 0:00 1:00 WEST 1918 Oct 7 23:00
557  {
558  NULL /*zone_policy*/,
559  "WEST" /*format*/,
560  0 /*offset_code (0/15)*/,
561  0 /*offset_remainder (0%15)*/,
562  60 /*delta_minutes*/,
563  1918 /*until_year*/,
564  10 /*until_month*/,
565  7 /*until_day*/,
566  5520 /*until_time_code (82800/15)*/,
567  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
568  },
569  // 0:00 - WET 1924
570  {
571  NULL /*zone_policy*/,
572  "WET" /*format*/,
573  0 /*offset_code (0/15)*/,
574  0 /*offset_remainder (0%15)*/,
575  0 /*delta_minutes*/,
576  1924 /*until_year*/,
577  1 /*until_month*/,
578  1 /*until_day*/,
579  0 /*until_time_code (0/15)*/,
580  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
581  },
582  // 0:00 Spain WE%sT 1929
583  {
584  &kAtcAllZonePolicySpain /*zone_policy*/,
585  "WE%T" /*format*/,
586  0 /*offset_code (0/15)*/,
587  0 /*offset_remainder (0%15)*/,
588  0 /*delta_minutes*/,
589  1929 /*until_year*/,
590  1 /*until_month*/,
591  1 /*until_day*/,
592  0 /*until_time_code (0/15)*/,
593  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
594  },
595  // 0:00 - WET 1967
596  {
597  NULL /*zone_policy*/,
598  "WET" /*format*/,
599  0 /*offset_code (0/15)*/,
600  0 /*offset_remainder (0%15)*/,
601  0 /*delta_minutes*/,
602  1967 /*until_year*/,
603  1 /*until_month*/,
604  1 /*until_day*/,
605  0 /*until_time_code (0/15)*/,
606  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
607  },
608  // 0:00 SpainAfrica WE%sT 1984 Mar 16
609  {
610  &kAtcAllZonePolicySpainAfrica /*zone_policy*/,
611  "WE%T" /*format*/,
612  0 /*offset_code (0/15)*/,
613  0 /*offset_remainder (0%15)*/,
614  0 /*delta_minutes*/,
615  1984 /*until_year*/,
616  3 /*until_month*/,
617  16 /*until_day*/,
618  0 /*until_time_code (0/15)*/,
619  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
620  },
621  // 1:00 - CET 1986
622  {
623  NULL /*zone_policy*/,
624  "CET" /*format*/,
625  240 /*offset_code (3600/15)*/,
626  0 /*offset_remainder (3600%15)*/,
627  0 /*delta_minutes*/,
628  1986 /*until_year*/,
629  1 /*until_month*/,
630  1 /*until_day*/,
631  0 /*until_time_code (0/15)*/,
632  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
633  },
634  // 1:00 EU CE%sT
635  {
636  &kAtcAllZonePolicyEU /*zone_policy*/,
637  "CE%T" /*format*/,
638  240 /*offset_code (3600/15)*/,
639  0 /*offset_remainder (3600%15)*/,
640  0 /*delta_minutes*/,
641  32767 /*until_year*/,
642  1 /*until_month*/,
643  1 /*until_day*/,
644  0 /*until_time_code (0/15)*/,
645  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
646  },
647 
648 };
649 
650 static const char kAtcZoneNameAfrica_Ceuta[] = "Africa/Ceuta";
651 
652 const AtcZoneInfo kAtcAllZoneAfrica_Ceuta = {
653  kAtcZoneNameAfrica_Ceuta /*name*/,
654  0x77fb46ec /*zone_id*/,
655  &kAtcAllZoneContext /*zone_context*/,
656  9 /*num_eras*/,
657  kAtcZoneEraAfrica_Ceuta /*eras*/,
658  NULL /*target_info*/,
659 };
660 
661 //---------------------------------------------------------------------------
662 // Zone name: Africa/El_Aaiun
663 // Zone Eras: 4
664 //---------------------------------------------------------------------------
665 
666 static const AtcZoneEra kAtcZoneEraAfrica_El_Aaiun[] = {
667  // -0:52:48 - LMT 1934 Jan
668  {
669  NULL /*zone_policy*/,
670  "LMT" /*format*/,
671  -212 /*offset_code (-3168/15)*/,
672  12 /*offset_remainder (-3168%15)*/,
673  0 /*delta_minutes*/,
674  1934 /*until_year*/,
675  1 /*until_month*/,
676  1 /*until_day*/,
677  0 /*until_time_code (0/15)*/,
678  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
679  },
680  // -1:00 - -01 1976 Apr 14
681  {
682  NULL /*zone_policy*/,
683  "-01" /*format*/,
684  -240 /*offset_code (-3600/15)*/,
685  0 /*offset_remainder (-3600%15)*/,
686  0 /*delta_minutes*/,
687  1976 /*until_year*/,
688  4 /*until_month*/,
689  14 /*until_day*/,
690  0 /*until_time_code (0/15)*/,
691  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
692  },
693  // 0:00 Morocco +00/+01 2018 Oct 28 3:00
694  {
695  &kAtcAllZonePolicyMorocco /*zone_policy*/,
696  "+00/+01" /*format*/,
697  0 /*offset_code (0/15)*/,
698  0 /*offset_remainder (0%15)*/,
699  0 /*delta_minutes*/,
700  2018 /*until_year*/,
701  10 /*until_month*/,
702  28 /*until_day*/,
703  720 /*until_time_code (10800/15)*/,
704  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
705  },
706  // 1:00 Morocco +01/+00
707  {
708  &kAtcAllZonePolicyMorocco /*zone_policy*/,
709  "+01/+00" /*format*/,
710  240 /*offset_code (3600/15)*/,
711  0 /*offset_remainder (3600%15)*/,
712  0 /*delta_minutes*/,
713  32767 /*until_year*/,
714  1 /*until_month*/,
715  1 /*until_day*/,
716  0 /*until_time_code (0/15)*/,
717  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
718  },
719 
720 };
721 
722 static const char kAtcZoneNameAfrica_El_Aaiun[] = "Africa/El_Aaiun";
723 
724 const AtcZoneInfo kAtcAllZoneAfrica_El_Aaiun = {
725  kAtcZoneNameAfrica_El_Aaiun /*name*/,
726  0x9d6fb118 /*zone_id*/,
727  &kAtcAllZoneContext /*zone_context*/,
728  4 /*num_eras*/,
729  kAtcZoneEraAfrica_El_Aaiun /*eras*/,
730  NULL /*target_info*/,
731 };
732 
733 //---------------------------------------------------------------------------
734 // Zone name: Africa/Johannesburg
735 // Zone Eras: 3
736 //---------------------------------------------------------------------------
737 
738 static const AtcZoneEra kAtcZoneEraAfrica_Johannesburg[] = {
739  // 1:52:00 - LMT 1892 Feb 8
740  {
741  NULL /*zone_policy*/,
742  "LMT" /*format*/,
743  448 /*offset_code (6720/15)*/,
744  0 /*offset_remainder (6720%15)*/,
745  0 /*delta_minutes*/,
746  1892 /*until_year*/,
747  2 /*until_month*/,
748  8 /*until_day*/,
749  0 /*until_time_code (0/15)*/,
750  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
751  },
752  // 1:30 - SAST 1903 Mar
753  {
754  NULL /*zone_policy*/,
755  "SAST" /*format*/,
756  360 /*offset_code (5400/15)*/,
757  0 /*offset_remainder (5400%15)*/,
758  0 /*delta_minutes*/,
759  1903 /*until_year*/,
760  3 /*until_month*/,
761  1 /*until_day*/,
762  0 /*until_time_code (0/15)*/,
763  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
764  },
765  // 2:00 SA SAST
766  {
767  &kAtcAllZonePolicySA /*zone_policy*/,
768  "SAST" /*format*/,
769  480 /*offset_code (7200/15)*/,
770  0 /*offset_remainder (7200%15)*/,
771  0 /*delta_minutes*/,
772  32767 /*until_year*/,
773  1 /*until_month*/,
774  1 /*until_day*/,
775  0 /*until_time_code (0/15)*/,
776  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
777  },
778 
779 };
780 
781 static const char kAtcZoneNameAfrica_Johannesburg[] = "Africa/Johannesburg";
782 
783 const AtcZoneInfo kAtcAllZoneAfrica_Johannesburg = {
784  kAtcZoneNameAfrica_Johannesburg /*name*/,
785  0xd5d157a0 /*zone_id*/,
786  &kAtcAllZoneContext /*zone_context*/,
787  3 /*num_eras*/,
788  kAtcZoneEraAfrica_Johannesburg /*eras*/,
789  NULL /*target_info*/,
790 };
791 
792 //---------------------------------------------------------------------------
793 // Zone name: Africa/Juba
794 // Zone Eras: 4
795 //---------------------------------------------------------------------------
796 
797 static const AtcZoneEra kAtcZoneEraAfrica_Juba[] = {
798  // 2:06:28 - LMT 1931
799  {
800  NULL /*zone_policy*/,
801  "LMT" /*format*/,
802  505 /*offset_code (7588/15)*/,
803  13 /*offset_remainder (7588%15)*/,
804  0 /*delta_minutes*/,
805  1931 /*until_year*/,
806  1 /*until_month*/,
807  1 /*until_day*/,
808  0 /*until_time_code (0/15)*/,
809  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
810  },
811  // 2:00 Sudan CA%sT 2000 Jan 15 12:00
812  {
813  &kAtcAllZonePolicySudan /*zone_policy*/,
814  "CA%T" /*format*/,
815  480 /*offset_code (7200/15)*/,
816  0 /*offset_remainder (7200%15)*/,
817  0 /*delta_minutes*/,
818  2000 /*until_year*/,
819  1 /*until_month*/,
820  15 /*until_day*/,
821  2880 /*until_time_code (43200/15)*/,
822  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
823  },
824  // 3:00 - EAT 2021 Feb 1 00:00
825  {
826  NULL /*zone_policy*/,
827  "EAT" /*format*/,
828  720 /*offset_code (10800/15)*/,
829  0 /*offset_remainder (10800%15)*/,
830  0 /*delta_minutes*/,
831  2021 /*until_year*/,
832  2 /*until_month*/,
833  1 /*until_day*/,
834  0 /*until_time_code (0/15)*/,
835  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
836  },
837  // 2:00 - CAT
838  {
839  NULL /*zone_policy*/,
840  "CAT" /*format*/,
841  480 /*offset_code (7200/15)*/,
842  0 /*offset_remainder (7200%15)*/,
843  0 /*delta_minutes*/,
844  32767 /*until_year*/,
845  1 /*until_month*/,
846  1 /*until_day*/,
847  0 /*until_time_code (0/15)*/,
848  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
849  },
850 
851 };
852 
853 static const char kAtcZoneNameAfrica_Juba[] = "Africa/Juba";
854 
855 const AtcZoneInfo kAtcAllZoneAfrica_Juba = {
856  kAtcZoneNameAfrica_Juba /*name*/,
857  0xd51b395c /*zone_id*/,
858  &kAtcAllZoneContext /*zone_context*/,
859  4 /*num_eras*/,
860  kAtcZoneEraAfrica_Juba /*eras*/,
861  NULL /*target_info*/,
862 };
863 
864 //---------------------------------------------------------------------------
865 // Zone name: Africa/Khartoum
866 // Zone Eras: 4
867 //---------------------------------------------------------------------------
868 
869 static const AtcZoneEra kAtcZoneEraAfrica_Khartoum[] = {
870  // 2:10:08 - LMT 1931
871  {
872  NULL /*zone_policy*/,
873  "LMT" /*format*/,
874  520 /*offset_code (7808/15)*/,
875  8 /*offset_remainder (7808%15)*/,
876  0 /*delta_minutes*/,
877  1931 /*until_year*/,
878  1 /*until_month*/,
879  1 /*until_day*/,
880  0 /*until_time_code (0/15)*/,
881  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
882  },
883  // 2:00 Sudan CA%sT 2000 Jan 15 12:00
884  {
885  &kAtcAllZonePolicySudan /*zone_policy*/,
886  "CA%T" /*format*/,
887  480 /*offset_code (7200/15)*/,
888  0 /*offset_remainder (7200%15)*/,
889  0 /*delta_minutes*/,
890  2000 /*until_year*/,
891  1 /*until_month*/,
892  15 /*until_day*/,
893  2880 /*until_time_code (43200/15)*/,
894  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
895  },
896  // 3:00 - EAT 2017 Nov 1
897  {
898  NULL /*zone_policy*/,
899  "EAT" /*format*/,
900  720 /*offset_code (10800/15)*/,
901  0 /*offset_remainder (10800%15)*/,
902  0 /*delta_minutes*/,
903  2017 /*until_year*/,
904  11 /*until_month*/,
905  1 /*until_day*/,
906  0 /*until_time_code (0/15)*/,
907  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
908  },
909  // 2:00 - CAT
910  {
911  NULL /*zone_policy*/,
912  "CAT" /*format*/,
913  480 /*offset_code (7200/15)*/,
914  0 /*offset_remainder (7200%15)*/,
915  0 /*delta_minutes*/,
916  32767 /*until_year*/,
917  1 /*until_month*/,
918  1 /*until_day*/,
919  0 /*until_time_code (0/15)*/,
920  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
921  },
922 
923 };
924 
925 static const char kAtcZoneNameAfrica_Khartoum[] = "Africa/Khartoum";
926 
927 const AtcZoneInfo kAtcAllZoneAfrica_Khartoum = {
928  kAtcZoneNameAfrica_Khartoum /*name*/,
929  0xfb3d4205 /*zone_id*/,
930  &kAtcAllZoneContext /*zone_context*/,
931  4 /*num_eras*/,
932  kAtcZoneEraAfrica_Khartoum /*eras*/,
933  NULL /*target_info*/,
934 };
935 
936 //---------------------------------------------------------------------------
937 // Zone name: Africa/Lagos
938 // Zone Eras: 5
939 //---------------------------------------------------------------------------
940 
941 static const AtcZoneEra kAtcZoneEraAfrica_Lagos[] = {
942  // 0:13:35 - LMT 1905 Jul 1
943  {
944  NULL /*zone_policy*/,
945  "LMT" /*format*/,
946  54 /*offset_code (815/15)*/,
947  5 /*offset_remainder (815%15)*/,
948  0 /*delta_minutes*/,
949  1905 /*until_year*/,
950  7 /*until_month*/,
951  1 /*until_day*/,
952  0 /*until_time_code (0/15)*/,
953  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
954  },
955  // 0:00 - GMT 1908 Jul 1
956  {
957  NULL /*zone_policy*/,
958  "GMT" /*format*/,
959  0 /*offset_code (0/15)*/,
960  0 /*offset_remainder (0%15)*/,
961  0 /*delta_minutes*/,
962  1908 /*until_year*/,
963  7 /*until_month*/,
964  1 /*until_day*/,
965  0 /*until_time_code (0/15)*/,
966  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
967  },
968  // 0:13:35 - LMT 1914 Jan 1
969  {
970  NULL /*zone_policy*/,
971  "LMT" /*format*/,
972  54 /*offset_code (815/15)*/,
973  5 /*offset_remainder (815%15)*/,
974  0 /*delta_minutes*/,
975  1914 /*until_year*/,
976  1 /*until_month*/,
977  1 /*until_day*/,
978  0 /*until_time_code (0/15)*/,
979  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
980  },
981  // 0:30 - +0030 1919 Sep 1
982  {
983  NULL /*zone_policy*/,
984  "+0030" /*format*/,
985  120 /*offset_code (1800/15)*/,
986  0 /*offset_remainder (1800%15)*/,
987  0 /*delta_minutes*/,
988  1919 /*until_year*/,
989  9 /*until_month*/,
990  1 /*until_day*/,
991  0 /*until_time_code (0/15)*/,
992  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
993  },
994  // 1:00 - WAT
995  {
996  NULL /*zone_policy*/,
997  "WAT" /*format*/,
998  240 /*offset_code (3600/15)*/,
999  0 /*offset_remainder (3600%15)*/,
1000  0 /*delta_minutes*/,
1001  32767 /*until_year*/,
1002  1 /*until_month*/,
1003  1 /*until_day*/,
1004  0 /*until_time_code (0/15)*/,
1005  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1006  },
1007 
1008 };
1009 
1010 static const char kAtcZoneNameAfrica_Lagos[] = "Africa/Lagos";
1011 
1012 const AtcZoneInfo kAtcAllZoneAfrica_Lagos = {
1013  kAtcZoneNameAfrica_Lagos /*name*/,
1014  0x789bb5d0 /*zone_id*/,
1015  &kAtcAllZoneContext /*zone_context*/,
1016  5 /*num_eras*/,
1017  kAtcZoneEraAfrica_Lagos /*eras*/,
1018  NULL /*target_info*/,
1019 };
1020 
1021 //---------------------------------------------------------------------------
1022 // Zone name: Africa/Maputo
1023 // Zone Eras: 2
1024 //---------------------------------------------------------------------------
1025 
1026 static const AtcZoneEra kAtcZoneEraAfrica_Maputo[] = {
1027  // 2:10:20 - LMT 1903 Mar
1028  {
1029  NULL /*zone_policy*/,
1030  "LMT" /*format*/,
1031  521 /*offset_code (7820/15)*/,
1032  5 /*offset_remainder (7820%15)*/,
1033  0 /*delta_minutes*/,
1034  1903 /*until_year*/,
1035  3 /*until_month*/,
1036  1 /*until_day*/,
1037  0 /*until_time_code (0/15)*/,
1038  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1039  },
1040  // 2:00 - CAT
1041  {
1042  NULL /*zone_policy*/,
1043  "CAT" /*format*/,
1044  480 /*offset_code (7200/15)*/,
1045  0 /*offset_remainder (7200%15)*/,
1046  0 /*delta_minutes*/,
1047  32767 /*until_year*/,
1048  1 /*until_month*/,
1049  1 /*until_day*/,
1050  0 /*until_time_code (0/15)*/,
1051  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1052  },
1053 
1054 };
1055 
1056 static const char kAtcZoneNameAfrica_Maputo[] = "Africa/Maputo";
1057 
1058 const AtcZoneInfo kAtcAllZoneAfrica_Maputo = {
1059  kAtcZoneNameAfrica_Maputo /*name*/,
1060  0x8e6ca1f0 /*zone_id*/,
1061  &kAtcAllZoneContext /*zone_context*/,
1062  2 /*num_eras*/,
1063  kAtcZoneEraAfrica_Maputo /*eras*/,
1064  NULL /*target_info*/,
1065 };
1066 
1067 //---------------------------------------------------------------------------
1068 // Zone name: Africa/Monrovia
1069 // Zone Eras: 4
1070 //---------------------------------------------------------------------------
1071 
1072 static const AtcZoneEra kAtcZoneEraAfrica_Monrovia[] = {
1073  // -0:43:08 - LMT 1882
1074  {
1075  NULL /*zone_policy*/,
1076  "LMT" /*format*/,
1077  -173 /*offset_code (-2588/15)*/,
1078  7 /*offset_remainder (-2588%15)*/,
1079  0 /*delta_minutes*/,
1080  1882 /*until_year*/,
1081  1 /*until_month*/,
1082  1 /*until_day*/,
1083  0 /*until_time_code (0/15)*/,
1084  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1085  },
1086  // -0:43:08 - MMT 1919 Mar
1087  {
1088  NULL /*zone_policy*/,
1089  "MMT" /*format*/,
1090  -173 /*offset_code (-2588/15)*/,
1091  7 /*offset_remainder (-2588%15)*/,
1092  0 /*delta_minutes*/,
1093  1919 /*until_year*/,
1094  3 /*until_month*/,
1095  1 /*until_day*/,
1096  0 /*until_time_code (0/15)*/,
1097  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1098  },
1099  // -0:44:30 - MMT 1972 Jan 7
1100  {
1101  NULL /*zone_policy*/,
1102  "MMT" /*format*/,
1103  -178 /*offset_code (-2670/15)*/,
1104  0 /*offset_remainder (-2670%15)*/,
1105  0 /*delta_minutes*/,
1106  1972 /*until_year*/,
1107  1 /*until_month*/,
1108  7 /*until_day*/,
1109  0 /*until_time_code (0/15)*/,
1110  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1111  },
1112  // 0:00 - GMT
1113  {
1114  NULL /*zone_policy*/,
1115  "GMT" /*format*/,
1116  0 /*offset_code (0/15)*/,
1117  0 /*offset_remainder (0%15)*/,
1118  0 /*delta_minutes*/,
1119  32767 /*until_year*/,
1120  1 /*until_month*/,
1121  1 /*until_day*/,
1122  0 /*until_time_code (0/15)*/,
1123  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1124  },
1125 
1126 };
1127 
1128 static const char kAtcZoneNameAfrica_Monrovia[] = "Africa/Monrovia";
1129 
1130 const AtcZoneInfo kAtcAllZoneAfrica_Monrovia = {
1131  kAtcZoneNameAfrica_Monrovia /*name*/,
1132  0x0ce90385 /*zone_id*/,
1133  &kAtcAllZoneContext /*zone_context*/,
1134  4 /*num_eras*/,
1135  kAtcZoneEraAfrica_Monrovia /*eras*/,
1136  NULL /*target_info*/,
1137 };
1138 
1139 //---------------------------------------------------------------------------
1140 // Zone name: Africa/Nairobi
1141 // Zone Eras: 6
1142 //---------------------------------------------------------------------------
1143 
1144 static const AtcZoneEra kAtcZoneEraAfrica_Nairobi[] = {
1145  // 2:27:16 - LMT 1908 May
1146  {
1147  NULL /*zone_policy*/,
1148  "LMT" /*format*/,
1149  589 /*offset_code (8836/15)*/,
1150  1 /*offset_remainder (8836%15)*/,
1151  0 /*delta_minutes*/,
1152  1908 /*until_year*/,
1153  5 /*until_month*/,
1154  1 /*until_day*/,
1155  0 /*until_time_code (0/15)*/,
1156  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1157  },
1158  // 2:30 - +0230 1928 Jun 30 24:00
1159  {
1160  NULL /*zone_policy*/,
1161  "+0230" /*format*/,
1162  600 /*offset_code (9000/15)*/,
1163  0 /*offset_remainder (9000%15)*/,
1164  0 /*delta_minutes*/,
1165  1928 /*until_year*/,
1166  6 /*until_month*/,
1167  30 /*until_day*/,
1168  5760 /*until_time_code (86400/15)*/,
1169  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1170  },
1171  // 3:00 - EAT 1930 Jan 4 24:00
1172  {
1173  NULL /*zone_policy*/,
1174  "EAT" /*format*/,
1175  720 /*offset_code (10800/15)*/,
1176  0 /*offset_remainder (10800%15)*/,
1177  0 /*delta_minutes*/,
1178  1930 /*until_year*/,
1179  1 /*until_month*/,
1180  4 /*until_day*/,
1181  5760 /*until_time_code (86400/15)*/,
1182  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1183  },
1184  // 2:30 - +0230 1936 Dec 31 24:00
1185  {
1186  NULL /*zone_policy*/,
1187  "+0230" /*format*/,
1188  600 /*offset_code (9000/15)*/,
1189  0 /*offset_remainder (9000%15)*/,
1190  0 /*delta_minutes*/,
1191  1936 /*until_year*/,
1192  12 /*until_month*/,
1193  31 /*until_day*/,
1194  5760 /*until_time_code (86400/15)*/,
1195  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1196  },
1197  // 2:45 - +0245 1942 Jul 31 24:00
1198  {
1199  NULL /*zone_policy*/,
1200  "+0245" /*format*/,
1201  660 /*offset_code (9900/15)*/,
1202  0 /*offset_remainder (9900%15)*/,
1203  0 /*delta_minutes*/,
1204  1942 /*until_year*/,
1205  7 /*until_month*/,
1206  31 /*until_day*/,
1207  5760 /*until_time_code (86400/15)*/,
1208  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1209  },
1210  // 3:00 - EAT
1211  {
1212  NULL /*zone_policy*/,
1213  "EAT" /*format*/,
1214  720 /*offset_code (10800/15)*/,
1215  0 /*offset_remainder (10800%15)*/,
1216  0 /*delta_minutes*/,
1217  32767 /*until_year*/,
1218  1 /*until_month*/,
1219  1 /*until_day*/,
1220  0 /*until_time_code (0/15)*/,
1221  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1222  },
1223 
1224 };
1225 
1226 static const char kAtcZoneNameAfrica_Nairobi[] = "Africa/Nairobi";
1227 
1228 const AtcZoneInfo kAtcAllZoneAfrica_Nairobi = {
1229  kAtcZoneNameAfrica_Nairobi /*name*/,
1230  0xa87ab57e /*zone_id*/,
1231  &kAtcAllZoneContext /*zone_context*/,
1232  6 /*num_eras*/,
1233  kAtcZoneEraAfrica_Nairobi /*eras*/,
1234  NULL /*target_info*/,
1235 };
1236 
1237 //---------------------------------------------------------------------------
1238 // Zone name: Africa/Ndjamena
1239 // Zone Eras: 4
1240 //---------------------------------------------------------------------------
1241 
1242 static const AtcZoneEra kAtcZoneEraAfrica_Ndjamena[] = {
1243  // 1:00:12 - LMT 1912
1244  {
1245  NULL /*zone_policy*/,
1246  "LMT" /*format*/,
1247  240 /*offset_code (3612/15)*/,
1248  12 /*offset_remainder (3612%15)*/,
1249  0 /*delta_minutes*/,
1250  1912 /*until_year*/,
1251  1 /*until_month*/,
1252  1 /*until_day*/,
1253  0 /*until_time_code (0/15)*/,
1254  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1255  },
1256  // 1:00 - WAT 1979 Oct 14
1257  {
1258  NULL /*zone_policy*/,
1259  "WAT" /*format*/,
1260  240 /*offset_code (3600/15)*/,
1261  0 /*offset_remainder (3600%15)*/,
1262  0 /*delta_minutes*/,
1263  1979 /*until_year*/,
1264  10 /*until_month*/,
1265  14 /*until_day*/,
1266  0 /*until_time_code (0/15)*/,
1267  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1268  },
1269  // 1:00 1:00 WAST 1980 Mar 8
1270  {
1271  NULL /*zone_policy*/,
1272  "WAST" /*format*/,
1273  240 /*offset_code (3600/15)*/,
1274  0 /*offset_remainder (3600%15)*/,
1275  60 /*delta_minutes*/,
1276  1980 /*until_year*/,
1277  3 /*until_month*/,
1278  8 /*until_day*/,
1279  0 /*until_time_code (0/15)*/,
1280  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1281  },
1282  // 1:00 - WAT
1283  {
1284  NULL /*zone_policy*/,
1285  "WAT" /*format*/,
1286  240 /*offset_code (3600/15)*/,
1287  0 /*offset_remainder (3600%15)*/,
1288  0 /*delta_minutes*/,
1289  32767 /*until_year*/,
1290  1 /*until_month*/,
1291  1 /*until_day*/,
1292  0 /*until_time_code (0/15)*/,
1293  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1294  },
1295 
1296 };
1297 
1298 static const char kAtcZoneNameAfrica_Ndjamena[] = "Africa/Ndjamena";
1299 
1300 const AtcZoneInfo kAtcAllZoneAfrica_Ndjamena = {
1301  kAtcZoneNameAfrica_Ndjamena /*name*/,
1302  0x9fe09898 /*zone_id*/,
1303  &kAtcAllZoneContext /*zone_context*/,
1304  4 /*num_eras*/,
1305  kAtcZoneEraAfrica_Ndjamena /*eras*/,
1306  NULL /*target_info*/,
1307 };
1308 
1309 //---------------------------------------------------------------------------
1310 // Zone name: Africa/Sao_Tome
1311 // Zone Eras: 5
1312 //---------------------------------------------------------------------------
1313 
1314 static const AtcZoneEra kAtcZoneEraAfrica_Sao_Tome[] = {
1315  // 0:26:56 - LMT 1884
1316  {
1317  NULL /*zone_policy*/,
1318  "LMT" /*format*/,
1319  107 /*offset_code (1616/15)*/,
1320  11 /*offset_remainder (1616%15)*/,
1321  0 /*delta_minutes*/,
1322  1884 /*until_year*/,
1323  1 /*until_month*/,
1324  1 /*until_day*/,
1325  0 /*until_time_code (0/15)*/,
1326  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1327  },
1328  // -0:36:45 - LMT 1912 Jan 1 00:00u
1329  {
1330  NULL /*zone_policy*/,
1331  "LMT" /*format*/,
1332  -147 /*offset_code (-2205/15)*/,
1333  0 /*offset_remainder (-2205%15)*/,
1334  0 /*delta_minutes*/,
1335  1912 /*until_year*/,
1336  1 /*until_month*/,
1337  1 /*until_day*/,
1338  0 /*until_time_code (0/15)*/,
1339  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
1340  },
1341  // 0:00 - GMT 2018 Jan 1 01:00
1342  {
1343  NULL /*zone_policy*/,
1344  "GMT" /*format*/,
1345  0 /*offset_code (0/15)*/,
1346  0 /*offset_remainder (0%15)*/,
1347  0 /*delta_minutes*/,
1348  2018 /*until_year*/,
1349  1 /*until_month*/,
1350  1 /*until_day*/,
1351  240 /*until_time_code (3600/15)*/,
1352  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1353  },
1354  // 1:00 - WAT 2019 Jan 1 02:00
1355  {
1356  NULL /*zone_policy*/,
1357  "WAT" /*format*/,
1358  240 /*offset_code (3600/15)*/,
1359  0 /*offset_remainder (3600%15)*/,
1360  0 /*delta_minutes*/,
1361  2019 /*until_year*/,
1362  1 /*until_month*/,
1363  1 /*until_day*/,
1364  480 /*until_time_code (7200/15)*/,
1365  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1366  },
1367  // 0:00 - GMT
1368  {
1369  NULL /*zone_policy*/,
1370  "GMT" /*format*/,
1371  0 /*offset_code (0/15)*/,
1372  0 /*offset_remainder (0%15)*/,
1373  0 /*delta_minutes*/,
1374  32767 /*until_year*/,
1375  1 /*until_month*/,
1376  1 /*until_day*/,
1377  0 /*until_time_code (0/15)*/,
1378  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1379  },
1380 
1381 };
1382 
1383 static const char kAtcZoneNameAfrica_Sao_Tome[] = "Africa/Sao_Tome";
1384 
1385 const AtcZoneInfo kAtcAllZoneAfrica_Sao_Tome = {
1386  kAtcZoneNameAfrica_Sao_Tome /*name*/,
1387  0x61b319d1 /*zone_id*/,
1388  &kAtcAllZoneContext /*zone_context*/,
1389  5 /*num_eras*/,
1390  kAtcZoneEraAfrica_Sao_Tome /*eras*/,
1391  NULL /*target_info*/,
1392 };
1393 
1394 //---------------------------------------------------------------------------
1395 // Zone name: Africa/Tripoli
1396 // Zone Eras: 9
1397 //---------------------------------------------------------------------------
1398 
1399 static const AtcZoneEra kAtcZoneEraAfrica_Tripoli[] = {
1400  // 0:52:44 - LMT 1920
1401  {
1402  NULL /*zone_policy*/,
1403  "LMT" /*format*/,
1404  210 /*offset_code (3164/15)*/,
1405  14 /*offset_remainder (3164%15)*/,
1406  0 /*delta_minutes*/,
1407  1920 /*until_year*/,
1408  1 /*until_month*/,
1409  1 /*until_day*/,
1410  0 /*until_time_code (0/15)*/,
1411  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1412  },
1413  // 1:00 Libya CE%sT 1959
1414  {
1415  &kAtcAllZonePolicyLibya /*zone_policy*/,
1416  "CE%T" /*format*/,
1417  240 /*offset_code (3600/15)*/,
1418  0 /*offset_remainder (3600%15)*/,
1419  0 /*delta_minutes*/,
1420  1959 /*until_year*/,
1421  1 /*until_month*/,
1422  1 /*until_day*/,
1423  0 /*until_time_code (0/15)*/,
1424  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1425  },
1426  // 2:00 - EET 1982
1427  {
1428  NULL /*zone_policy*/,
1429  "EET" /*format*/,
1430  480 /*offset_code (7200/15)*/,
1431  0 /*offset_remainder (7200%15)*/,
1432  0 /*delta_minutes*/,
1433  1982 /*until_year*/,
1434  1 /*until_month*/,
1435  1 /*until_day*/,
1436  0 /*until_time_code (0/15)*/,
1437  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1438  },
1439  // 1:00 Libya CE%sT 1990 May 4
1440  {
1441  &kAtcAllZonePolicyLibya /*zone_policy*/,
1442  "CE%T" /*format*/,
1443  240 /*offset_code (3600/15)*/,
1444  0 /*offset_remainder (3600%15)*/,
1445  0 /*delta_minutes*/,
1446  1990 /*until_year*/,
1447  5 /*until_month*/,
1448  4 /*until_day*/,
1449  0 /*until_time_code (0/15)*/,
1450  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1451  },
1452  // 2:00 - EET 1996 Sep 30
1453  {
1454  NULL /*zone_policy*/,
1455  "EET" /*format*/,
1456  480 /*offset_code (7200/15)*/,
1457  0 /*offset_remainder (7200%15)*/,
1458  0 /*delta_minutes*/,
1459  1996 /*until_year*/,
1460  9 /*until_month*/,
1461  30 /*until_day*/,
1462  0 /*until_time_code (0/15)*/,
1463  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1464  },
1465  // 1:00 Libya CE%sT 1997 Oct 4
1466  {
1467  &kAtcAllZonePolicyLibya /*zone_policy*/,
1468  "CE%T" /*format*/,
1469  240 /*offset_code (3600/15)*/,
1470  0 /*offset_remainder (3600%15)*/,
1471  0 /*delta_minutes*/,
1472  1997 /*until_year*/,
1473  10 /*until_month*/,
1474  4 /*until_day*/,
1475  0 /*until_time_code (0/15)*/,
1476  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1477  },
1478  // 2:00 - EET 2012 Nov 10 2:00
1479  {
1480  NULL /*zone_policy*/,
1481  "EET" /*format*/,
1482  480 /*offset_code (7200/15)*/,
1483  0 /*offset_remainder (7200%15)*/,
1484  0 /*delta_minutes*/,
1485  2012 /*until_year*/,
1486  11 /*until_month*/,
1487  10 /*until_day*/,
1488  480 /*until_time_code (7200/15)*/,
1489  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1490  },
1491  // 1:00 Libya CE%sT 2013 Oct 25 2:00
1492  {
1493  &kAtcAllZonePolicyLibya /*zone_policy*/,
1494  "CE%T" /*format*/,
1495  240 /*offset_code (3600/15)*/,
1496  0 /*offset_remainder (3600%15)*/,
1497  0 /*delta_minutes*/,
1498  2013 /*until_year*/,
1499  10 /*until_month*/,
1500  25 /*until_day*/,
1501  480 /*until_time_code (7200/15)*/,
1502  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1503  },
1504  // 2:00 - EET
1505  {
1506  NULL /*zone_policy*/,
1507  "EET" /*format*/,
1508  480 /*offset_code (7200/15)*/,
1509  0 /*offset_remainder (7200%15)*/,
1510  0 /*delta_minutes*/,
1511  32767 /*until_year*/,
1512  1 /*until_month*/,
1513  1 /*until_day*/,
1514  0 /*until_time_code (0/15)*/,
1515  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1516  },
1517 
1518 };
1519 
1520 static const char kAtcZoneNameAfrica_Tripoli[] = "Africa/Tripoli";
1521 
1522 const AtcZoneInfo kAtcAllZoneAfrica_Tripoli = {
1523  kAtcZoneNameAfrica_Tripoli /*name*/,
1524  0x9dfebd3d /*zone_id*/,
1525  &kAtcAllZoneContext /*zone_context*/,
1526  9 /*num_eras*/,
1527  kAtcZoneEraAfrica_Tripoli /*eras*/,
1528  NULL /*target_info*/,
1529 };
1530 
1531 //---------------------------------------------------------------------------
1532 // Zone name: Africa/Tunis
1533 // Zone Eras: 3
1534 //---------------------------------------------------------------------------
1535 
1536 static const AtcZoneEra kAtcZoneEraAfrica_Tunis[] = {
1537  // 0:40:44 - LMT 1881 May 12
1538  {
1539  NULL /*zone_policy*/,
1540  "LMT" /*format*/,
1541  162 /*offset_code (2444/15)*/,
1542  14 /*offset_remainder (2444%15)*/,
1543  0 /*delta_minutes*/,
1544  1881 /*until_year*/,
1545  5 /*until_month*/,
1546  12 /*until_day*/,
1547  0 /*until_time_code (0/15)*/,
1548  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1549  },
1550  // 0:09:21 - PMT 1911 Mar 11
1551  {
1552  NULL /*zone_policy*/,
1553  "PMT" /*format*/,
1554  37 /*offset_code (561/15)*/,
1555  6 /*offset_remainder (561%15)*/,
1556  0 /*delta_minutes*/,
1557  1911 /*until_year*/,
1558  3 /*until_month*/,
1559  11 /*until_day*/,
1560  0 /*until_time_code (0/15)*/,
1561  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1562  },
1563  // 1:00 Tunisia CE%sT
1564  {
1565  &kAtcAllZonePolicyTunisia /*zone_policy*/,
1566  "CE%T" /*format*/,
1567  240 /*offset_code (3600/15)*/,
1568  0 /*offset_remainder (3600%15)*/,
1569  0 /*delta_minutes*/,
1570  32767 /*until_year*/,
1571  1 /*until_month*/,
1572  1 /*until_day*/,
1573  0 /*until_time_code (0/15)*/,
1574  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1575  },
1576 
1577 };
1578 
1579 static const char kAtcZoneNameAfrica_Tunis[] = "Africa/Tunis";
1580 
1581 const AtcZoneInfo kAtcAllZoneAfrica_Tunis = {
1582  kAtcZoneNameAfrica_Tunis /*name*/,
1583  0x79378e6d /*zone_id*/,
1584  &kAtcAllZoneContext /*zone_context*/,
1585  3 /*num_eras*/,
1586  kAtcZoneEraAfrica_Tunis /*eras*/,
1587  NULL /*target_info*/,
1588 };
1589 
1590 //---------------------------------------------------------------------------
1591 // Zone name: Africa/Windhoek
1592 // Zone Eras: 6
1593 //---------------------------------------------------------------------------
1594 
1595 static const AtcZoneEra kAtcZoneEraAfrica_Windhoek[] = {
1596  // 1:08:24 - LMT 1892 Feb 8
1597  {
1598  NULL /*zone_policy*/,
1599  "LMT" /*format*/,
1600  273 /*offset_code (4104/15)*/,
1601  9 /*offset_remainder (4104%15)*/,
1602  0 /*delta_minutes*/,
1603  1892 /*until_year*/,
1604  2 /*until_month*/,
1605  8 /*until_day*/,
1606  0 /*until_time_code (0/15)*/,
1607  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1608  },
1609  // 1:30 - +0130 1903 Mar
1610  {
1611  NULL /*zone_policy*/,
1612  "+0130" /*format*/,
1613  360 /*offset_code (5400/15)*/,
1614  0 /*offset_remainder (5400%15)*/,
1615  0 /*delta_minutes*/,
1616  1903 /*until_year*/,
1617  3 /*until_month*/,
1618  1 /*until_day*/,
1619  0 /*until_time_code (0/15)*/,
1620  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1621  },
1622  // 2:00 - SAST 1942 Sep 20 2:00
1623  {
1624  NULL /*zone_policy*/,
1625  "SAST" /*format*/,
1626  480 /*offset_code (7200/15)*/,
1627  0 /*offset_remainder (7200%15)*/,
1628  0 /*delta_minutes*/,
1629  1942 /*until_year*/,
1630  9 /*until_month*/,
1631  20 /*until_day*/,
1632  480 /*until_time_code (7200/15)*/,
1633  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1634  },
1635  // 2:00 1:00 SAST 1943 Mar 21 2:00
1636  {
1637  NULL /*zone_policy*/,
1638  "SAST" /*format*/,
1639  480 /*offset_code (7200/15)*/,
1640  0 /*offset_remainder (7200%15)*/,
1641  60 /*delta_minutes*/,
1642  1943 /*until_year*/,
1643  3 /*until_month*/,
1644  21 /*until_day*/,
1645  480 /*until_time_code (7200/15)*/,
1646  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1647  },
1648  // 2:00 - SAST 1990 Mar 21
1649  {
1650  NULL /*zone_policy*/,
1651  "SAST" /*format*/,
1652  480 /*offset_code (7200/15)*/,
1653  0 /*offset_remainder (7200%15)*/,
1654  0 /*delta_minutes*/,
1655  1990 /*until_year*/,
1656  3 /*until_month*/,
1657  21 /*until_day*/,
1658  0 /*until_time_code (0/15)*/,
1659  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1660  },
1661  // 2:00 Namibia %s
1662  {
1663  &kAtcAllZonePolicyNamibia /*zone_policy*/,
1664  "%" /*format*/,
1665  480 /*offset_code (7200/15)*/,
1666  0 /*offset_remainder (7200%15)*/,
1667  0 /*delta_minutes*/,
1668  32767 /*until_year*/,
1669  1 /*until_month*/,
1670  1 /*until_day*/,
1671  0 /*until_time_code (0/15)*/,
1672  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1673  },
1674 
1675 };
1676 
1677 static const char kAtcZoneNameAfrica_Windhoek[] = "Africa/Windhoek";
1678 
1679 const AtcZoneInfo kAtcAllZoneAfrica_Windhoek = {
1680  kAtcZoneNameAfrica_Windhoek /*name*/,
1681  0x789c9bd3 /*zone_id*/,
1682  &kAtcAllZoneContext /*zone_context*/,
1683  6 /*num_eras*/,
1684  kAtcZoneEraAfrica_Windhoek /*eras*/,
1685  NULL /*target_info*/,
1686 };
1687 
1688 //---------------------------------------------------------------------------
1689 // Zone name: America/Adak
1690 // Zone Eras: 9
1691 //---------------------------------------------------------------------------
1692 
1693 static const AtcZoneEra kAtcZoneEraAmerica_Adak[] = {
1694  // 12:13:22 - LMT 1867 Oct 19 12:44:35
1695  {
1696  NULL /*zone_policy*/,
1697  "LMT" /*format*/,
1698  2933 /*offset_code (44002/15)*/,
1699  7 /*offset_remainder (44002%15)*/,
1700  0 /*delta_minutes*/,
1701  1867 /*until_year*/,
1702  10 /*until_month*/,
1703  19 /*until_day*/,
1704  3058 /*until_time_code (45875/15)*/,
1705  5 /*until_time_modifier (kAtcSuffixW + seconds=5)*/,
1706  },
1707  // -11:46:38 - LMT 1900 Aug 20 12:00
1708  {
1709  NULL /*zone_policy*/,
1710  "LMT" /*format*/,
1711  -2827 /*offset_code (-42398/15)*/,
1712  7 /*offset_remainder (-42398%15)*/,
1713  0 /*delta_minutes*/,
1714  1900 /*until_year*/,
1715  8 /*until_month*/,
1716  20 /*until_day*/,
1717  2880 /*until_time_code (43200/15)*/,
1718  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1719  },
1720  // -11:00 - NST 1942
1721  {
1722  NULL /*zone_policy*/,
1723  "NST" /*format*/,
1724  -2640 /*offset_code (-39600/15)*/,
1725  0 /*offset_remainder (-39600%15)*/,
1726  0 /*delta_minutes*/,
1727  1942 /*until_year*/,
1728  1 /*until_month*/,
1729  1 /*until_day*/,
1730  0 /*until_time_code (0/15)*/,
1731  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1732  },
1733  // -11:00 US N%sT 1946
1734  {
1735  &kAtcAllZonePolicyUS /*zone_policy*/,
1736  "N%T" /*format*/,
1737  -2640 /*offset_code (-39600/15)*/,
1738  0 /*offset_remainder (-39600%15)*/,
1739  0 /*delta_minutes*/,
1740  1946 /*until_year*/,
1741  1 /*until_month*/,
1742  1 /*until_day*/,
1743  0 /*until_time_code (0/15)*/,
1744  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1745  },
1746  // -11:00 - NST 1967 Apr
1747  {
1748  NULL /*zone_policy*/,
1749  "NST" /*format*/,
1750  -2640 /*offset_code (-39600/15)*/,
1751  0 /*offset_remainder (-39600%15)*/,
1752  0 /*delta_minutes*/,
1753  1967 /*until_year*/,
1754  4 /*until_month*/,
1755  1 /*until_day*/,
1756  0 /*until_time_code (0/15)*/,
1757  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1758  },
1759  // -11:00 - BST 1969
1760  {
1761  NULL /*zone_policy*/,
1762  "BST" /*format*/,
1763  -2640 /*offset_code (-39600/15)*/,
1764  0 /*offset_remainder (-39600%15)*/,
1765  0 /*delta_minutes*/,
1766  1969 /*until_year*/,
1767  1 /*until_month*/,
1768  1 /*until_day*/,
1769  0 /*until_time_code (0/15)*/,
1770  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1771  },
1772  // -11:00 US B%sT 1983 Oct 30 2:00
1773  {
1774  &kAtcAllZonePolicyUS /*zone_policy*/,
1775  "B%T" /*format*/,
1776  -2640 /*offset_code (-39600/15)*/,
1777  0 /*offset_remainder (-39600%15)*/,
1778  0 /*delta_minutes*/,
1779  1983 /*until_year*/,
1780  10 /*until_month*/,
1781  30 /*until_day*/,
1782  480 /*until_time_code (7200/15)*/,
1783  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1784  },
1785  // -10:00 US AH%sT 1983 Nov 30
1786  {
1787  &kAtcAllZonePolicyUS /*zone_policy*/,
1788  "AH%T" /*format*/,
1789  -2400 /*offset_code (-36000/15)*/,
1790  0 /*offset_remainder (-36000%15)*/,
1791  0 /*delta_minutes*/,
1792  1983 /*until_year*/,
1793  11 /*until_month*/,
1794  30 /*until_day*/,
1795  0 /*until_time_code (0/15)*/,
1796  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1797  },
1798  // -10:00 US H%sT
1799  {
1800  &kAtcAllZonePolicyUS /*zone_policy*/,
1801  "H%T" /*format*/,
1802  -2400 /*offset_code (-36000/15)*/,
1803  0 /*offset_remainder (-36000%15)*/,
1804  0 /*delta_minutes*/,
1805  32767 /*until_year*/,
1806  1 /*until_month*/,
1807  1 /*until_day*/,
1808  0 /*until_time_code (0/15)*/,
1809  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1810  },
1811 
1812 };
1813 
1814 static const char kAtcZoneNameAmerica_Adak[] = "America/Adak";
1815 
1816 const AtcZoneInfo kAtcAllZoneAmerica_Adak = {
1817  kAtcZoneNameAmerica_Adak /*name*/,
1818  0x97fe49d7 /*zone_id*/,
1819  &kAtcAllZoneContext /*zone_context*/,
1820  9 /*num_eras*/,
1821  kAtcZoneEraAmerica_Adak /*eras*/,
1822  NULL /*target_info*/,
1823 };
1824 
1825 //---------------------------------------------------------------------------
1826 // Zone name: America/Anchorage
1827 // Zone Eras: 8
1828 //---------------------------------------------------------------------------
1829 
1830 static const AtcZoneEra kAtcZoneEraAmerica_Anchorage[] = {
1831  // 14:00:24 - LMT 1867 Oct 19 14:31:37
1832  {
1833  NULL /*zone_policy*/,
1834  "LMT" /*format*/,
1835  3361 /*offset_code (50424/15)*/,
1836  9 /*offset_remainder (50424%15)*/,
1837  0 /*delta_minutes*/,
1838  1867 /*until_year*/,
1839  10 /*until_month*/,
1840  19 /*until_day*/,
1841  3486 /*until_time_code (52297/15)*/,
1842  7 /*until_time_modifier (kAtcSuffixW + seconds=7)*/,
1843  },
1844  // -9:59:36 - LMT 1900 Aug 20 12:00
1845  {
1846  NULL /*zone_policy*/,
1847  "LMT" /*format*/,
1848  -2399 /*offset_code (-35976/15)*/,
1849  9 /*offset_remainder (-35976%15)*/,
1850  0 /*delta_minutes*/,
1851  1900 /*until_year*/,
1852  8 /*until_month*/,
1853  20 /*until_day*/,
1854  2880 /*until_time_code (43200/15)*/,
1855  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1856  },
1857  // -10:00 - AST 1942
1858  {
1859  NULL /*zone_policy*/,
1860  "AST" /*format*/,
1861  -2400 /*offset_code (-36000/15)*/,
1862  0 /*offset_remainder (-36000%15)*/,
1863  0 /*delta_minutes*/,
1864  1942 /*until_year*/,
1865  1 /*until_month*/,
1866  1 /*until_day*/,
1867  0 /*until_time_code (0/15)*/,
1868  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1869  },
1870  // -10:00 US A%sT 1967 Apr
1871  {
1872  &kAtcAllZonePolicyUS /*zone_policy*/,
1873  "A%T" /*format*/,
1874  -2400 /*offset_code (-36000/15)*/,
1875  0 /*offset_remainder (-36000%15)*/,
1876  0 /*delta_minutes*/,
1877  1967 /*until_year*/,
1878  4 /*until_month*/,
1879  1 /*until_day*/,
1880  0 /*until_time_code (0/15)*/,
1881  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1882  },
1883  // -10:00 - AHST 1969
1884  {
1885  NULL /*zone_policy*/,
1886  "AHST" /*format*/,
1887  -2400 /*offset_code (-36000/15)*/,
1888  0 /*offset_remainder (-36000%15)*/,
1889  0 /*delta_minutes*/,
1890  1969 /*until_year*/,
1891  1 /*until_month*/,
1892  1 /*until_day*/,
1893  0 /*until_time_code (0/15)*/,
1894  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1895  },
1896  // -10:00 US AH%sT 1983 Oct 30 2:00
1897  {
1898  &kAtcAllZonePolicyUS /*zone_policy*/,
1899  "AH%T" /*format*/,
1900  -2400 /*offset_code (-36000/15)*/,
1901  0 /*offset_remainder (-36000%15)*/,
1902  0 /*delta_minutes*/,
1903  1983 /*until_year*/,
1904  10 /*until_month*/,
1905  30 /*until_day*/,
1906  480 /*until_time_code (7200/15)*/,
1907  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1908  },
1909  // -9:00 US Y%sT 1983 Nov 30
1910  {
1911  &kAtcAllZonePolicyUS /*zone_policy*/,
1912  "Y%T" /*format*/,
1913  -2160 /*offset_code (-32400/15)*/,
1914  0 /*offset_remainder (-32400%15)*/,
1915  0 /*delta_minutes*/,
1916  1983 /*until_year*/,
1917  11 /*until_month*/,
1918  30 /*until_day*/,
1919  0 /*until_time_code (0/15)*/,
1920  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1921  },
1922  // -9:00 US AK%sT
1923  {
1924  &kAtcAllZonePolicyUS /*zone_policy*/,
1925  "AK%T" /*format*/,
1926  -2160 /*offset_code (-32400/15)*/,
1927  0 /*offset_remainder (-32400%15)*/,
1928  0 /*delta_minutes*/,
1929  32767 /*until_year*/,
1930  1 /*until_month*/,
1931  1 /*until_day*/,
1932  0 /*until_time_code (0/15)*/,
1933  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1934  },
1935 
1936 };
1937 
1938 static const char kAtcZoneNameAmerica_Anchorage[] = "America/Anchorage";
1939 
1940 const AtcZoneInfo kAtcAllZoneAmerica_Anchorage = {
1941  kAtcZoneNameAmerica_Anchorage /*name*/,
1942  0x5a79260e /*zone_id*/,
1943  &kAtcAllZoneContext /*zone_context*/,
1944  8 /*num_eras*/,
1945  kAtcZoneEraAmerica_Anchorage /*eras*/,
1946  NULL /*target_info*/,
1947 };
1948 
1949 //---------------------------------------------------------------------------
1950 // Zone name: America/Araguaina
1951 // Zone Eras: 7
1952 //---------------------------------------------------------------------------
1953 
1954 static const AtcZoneEra kAtcZoneEraAmerica_Araguaina[] = {
1955  // -3:12:48 - LMT 1914
1956  {
1957  NULL /*zone_policy*/,
1958  "LMT" /*format*/,
1959  -772 /*offset_code (-11568/15)*/,
1960  12 /*offset_remainder (-11568%15)*/,
1961  0 /*delta_minutes*/,
1962  1914 /*until_year*/,
1963  1 /*until_month*/,
1964  1 /*until_day*/,
1965  0 /*until_time_code (0/15)*/,
1966  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1967  },
1968  // -3:00 Brazil -03/-02 1990 Sep 17
1969  {
1970  &kAtcAllZonePolicyBrazil /*zone_policy*/,
1971  "-03/-02" /*format*/,
1972  -720 /*offset_code (-10800/15)*/,
1973  0 /*offset_remainder (-10800%15)*/,
1974  0 /*delta_minutes*/,
1975  1990 /*until_year*/,
1976  9 /*until_month*/,
1977  17 /*until_day*/,
1978  0 /*until_time_code (0/15)*/,
1979  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1980  },
1981  // -3:00 - -03 1995 Sep 14
1982  {
1983  NULL /*zone_policy*/,
1984  "-03" /*format*/,
1985  -720 /*offset_code (-10800/15)*/,
1986  0 /*offset_remainder (-10800%15)*/,
1987  0 /*delta_minutes*/,
1988  1995 /*until_year*/,
1989  9 /*until_month*/,
1990  14 /*until_day*/,
1991  0 /*until_time_code (0/15)*/,
1992  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
1993  },
1994  // -3:00 Brazil -03/-02 2003 Sep 24
1995  {
1996  &kAtcAllZonePolicyBrazil /*zone_policy*/,
1997  "-03/-02" /*format*/,
1998  -720 /*offset_code (-10800/15)*/,
1999  0 /*offset_remainder (-10800%15)*/,
2000  0 /*delta_minutes*/,
2001  2003 /*until_year*/,
2002  9 /*until_month*/,
2003  24 /*until_day*/,
2004  0 /*until_time_code (0/15)*/,
2005  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2006  },
2007  // -3:00 - -03 2012 Oct 21
2008  {
2009  NULL /*zone_policy*/,
2010  "-03" /*format*/,
2011  -720 /*offset_code (-10800/15)*/,
2012  0 /*offset_remainder (-10800%15)*/,
2013  0 /*delta_minutes*/,
2014  2012 /*until_year*/,
2015  10 /*until_month*/,
2016  21 /*until_day*/,
2017  0 /*until_time_code (0/15)*/,
2018  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2019  },
2020  // -3:00 Brazil -03/-02 2013 Sep
2021  {
2022  &kAtcAllZonePolicyBrazil /*zone_policy*/,
2023  "-03/-02" /*format*/,
2024  -720 /*offset_code (-10800/15)*/,
2025  0 /*offset_remainder (-10800%15)*/,
2026  0 /*delta_minutes*/,
2027  2013 /*until_year*/,
2028  9 /*until_month*/,
2029  1 /*until_day*/,
2030  0 /*until_time_code (0/15)*/,
2031  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2032  },
2033  // -3:00 - -03
2034  {
2035  NULL /*zone_policy*/,
2036  "-03" /*format*/,
2037  -720 /*offset_code (-10800/15)*/,
2038  0 /*offset_remainder (-10800%15)*/,
2039  0 /*delta_minutes*/,
2040  32767 /*until_year*/,
2041  1 /*until_month*/,
2042  1 /*until_day*/,
2043  0 /*until_time_code (0/15)*/,
2044  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2045  },
2046 
2047 };
2048 
2049 static const char kAtcZoneNameAmerica_Araguaina[] = "America/Araguaina";
2050 
2051 const AtcZoneInfo kAtcAllZoneAmerica_Araguaina = {
2052  kAtcZoneNameAmerica_Araguaina /*name*/,
2053  0x6f9a3aef /*zone_id*/,
2054  &kAtcAllZoneContext /*zone_context*/,
2055  7 /*num_eras*/,
2056  kAtcZoneEraAmerica_Araguaina /*eras*/,
2057  NULL /*target_info*/,
2058 };
2059 
2060 //---------------------------------------------------------------------------
2061 // Zone name: America/Argentina/Buenos_Aires
2062 // Zone Eras: 7
2063 //---------------------------------------------------------------------------
2064 
2065 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Buenos_Aires[] = {
2066  // -3:53:48 - LMT 1894 Oct 31
2067  {
2068  NULL /*zone_policy*/,
2069  "LMT" /*format*/,
2070  -936 /*offset_code (-14028/15)*/,
2071  12 /*offset_remainder (-14028%15)*/,
2072  0 /*delta_minutes*/,
2073  1894 /*until_year*/,
2074  10 /*until_month*/,
2075  31 /*until_day*/,
2076  0 /*until_time_code (0/15)*/,
2077  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2078  },
2079  // -4:16:48 - CMT 1920 May
2080  {
2081  NULL /*zone_policy*/,
2082  "CMT" /*format*/,
2083  -1028 /*offset_code (-15408/15)*/,
2084  12 /*offset_remainder (-15408%15)*/,
2085  0 /*delta_minutes*/,
2086  1920 /*until_year*/,
2087  5 /*until_month*/,
2088  1 /*until_day*/,
2089  0 /*until_time_code (0/15)*/,
2090  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2091  },
2092  // -4:00 - -04 1930 Dec
2093  {
2094  NULL /*zone_policy*/,
2095  "-04" /*format*/,
2096  -960 /*offset_code (-14400/15)*/,
2097  0 /*offset_remainder (-14400%15)*/,
2098  0 /*delta_minutes*/,
2099  1930 /*until_year*/,
2100  12 /*until_month*/,
2101  1 /*until_day*/,
2102  0 /*until_time_code (0/15)*/,
2103  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2104  },
2105  // -4:00 Arg -04/-03 1969 Oct 5
2106  {
2107  &kAtcAllZonePolicyArg /*zone_policy*/,
2108  "-04/-03" /*format*/,
2109  -960 /*offset_code (-14400/15)*/,
2110  0 /*offset_remainder (-14400%15)*/,
2111  0 /*delta_minutes*/,
2112  1969 /*until_year*/,
2113  10 /*until_month*/,
2114  5 /*until_day*/,
2115  0 /*until_time_code (0/15)*/,
2116  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2117  },
2118  // -3:00 Arg -03/-02 1999 Oct 3
2119  {
2120  &kAtcAllZonePolicyArg /*zone_policy*/,
2121  "-03/-02" /*format*/,
2122  -720 /*offset_code (-10800/15)*/,
2123  0 /*offset_remainder (-10800%15)*/,
2124  0 /*delta_minutes*/,
2125  1999 /*until_year*/,
2126  10 /*until_month*/,
2127  3 /*until_day*/,
2128  0 /*until_time_code (0/15)*/,
2129  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2130  },
2131  // -4:00 Arg -04/-03 2000 Mar 3
2132  {
2133  &kAtcAllZonePolicyArg /*zone_policy*/,
2134  "-04/-03" /*format*/,
2135  -960 /*offset_code (-14400/15)*/,
2136  0 /*offset_remainder (-14400%15)*/,
2137  0 /*delta_minutes*/,
2138  2000 /*until_year*/,
2139  3 /*until_month*/,
2140  3 /*until_day*/,
2141  0 /*until_time_code (0/15)*/,
2142  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2143  },
2144  // -3:00 Arg -03/-02
2145  {
2146  &kAtcAllZonePolicyArg /*zone_policy*/,
2147  "-03/-02" /*format*/,
2148  -720 /*offset_code (-10800/15)*/,
2149  0 /*offset_remainder (-10800%15)*/,
2150  0 /*delta_minutes*/,
2151  32767 /*until_year*/,
2152  1 /*until_month*/,
2153  1 /*until_day*/,
2154  0 /*until_time_code (0/15)*/,
2155  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2156  },
2157 
2158 };
2159 
2160 static const char kAtcZoneNameAmerica_Argentina_Buenos_Aires[] = "America/Argentina/Buenos_Aires";
2161 
2162 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Buenos_Aires = {
2163  kAtcZoneNameAmerica_Argentina_Buenos_Aires /*name*/,
2164  0xd43b4c0d /*zone_id*/,
2165  &kAtcAllZoneContext /*zone_context*/,
2166  7 /*num_eras*/,
2167  kAtcZoneEraAmerica_Argentina_Buenos_Aires /*eras*/,
2168  NULL /*target_info*/,
2169 };
2170 
2171 //---------------------------------------------------------------------------
2172 // Zone name: America/Argentina/Catamarca
2173 // Zone Eras: 12
2174 //---------------------------------------------------------------------------
2175 
2176 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Catamarca[] = {
2177  // -4:23:08 - LMT 1894 Oct 31
2178  {
2179  NULL /*zone_policy*/,
2180  "LMT" /*format*/,
2181  -1053 /*offset_code (-15788/15)*/,
2182  7 /*offset_remainder (-15788%15)*/,
2183  0 /*delta_minutes*/,
2184  1894 /*until_year*/,
2185  10 /*until_month*/,
2186  31 /*until_day*/,
2187  0 /*until_time_code (0/15)*/,
2188  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2189  },
2190  // -4:16:48 - CMT 1920 May
2191  {
2192  NULL /*zone_policy*/,
2193  "CMT" /*format*/,
2194  -1028 /*offset_code (-15408/15)*/,
2195  12 /*offset_remainder (-15408%15)*/,
2196  0 /*delta_minutes*/,
2197  1920 /*until_year*/,
2198  5 /*until_month*/,
2199  1 /*until_day*/,
2200  0 /*until_time_code (0/15)*/,
2201  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2202  },
2203  // -4:00 - -04 1930 Dec
2204  {
2205  NULL /*zone_policy*/,
2206  "-04" /*format*/,
2207  -960 /*offset_code (-14400/15)*/,
2208  0 /*offset_remainder (-14400%15)*/,
2209  0 /*delta_minutes*/,
2210  1930 /*until_year*/,
2211  12 /*until_month*/,
2212  1 /*until_day*/,
2213  0 /*until_time_code (0/15)*/,
2214  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2215  },
2216  // -4:00 Arg -04/-03 1969 Oct 5
2217  {
2218  &kAtcAllZonePolicyArg /*zone_policy*/,
2219  "-04/-03" /*format*/,
2220  -960 /*offset_code (-14400/15)*/,
2221  0 /*offset_remainder (-14400%15)*/,
2222  0 /*delta_minutes*/,
2223  1969 /*until_year*/,
2224  10 /*until_month*/,
2225  5 /*until_day*/,
2226  0 /*until_time_code (0/15)*/,
2227  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2228  },
2229  // -3:00 Arg -03/-02 1991 Mar 3
2230  {
2231  &kAtcAllZonePolicyArg /*zone_policy*/,
2232  "-03/-02" /*format*/,
2233  -720 /*offset_code (-10800/15)*/,
2234  0 /*offset_remainder (-10800%15)*/,
2235  0 /*delta_minutes*/,
2236  1991 /*until_year*/,
2237  3 /*until_month*/,
2238  3 /*until_day*/,
2239  0 /*until_time_code (0/15)*/,
2240  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2241  },
2242  // -4:00 - -04 1991 Oct 20
2243  {
2244  NULL /*zone_policy*/,
2245  "-04" /*format*/,
2246  -960 /*offset_code (-14400/15)*/,
2247  0 /*offset_remainder (-14400%15)*/,
2248  0 /*delta_minutes*/,
2249  1991 /*until_year*/,
2250  10 /*until_month*/,
2251  20 /*until_day*/,
2252  0 /*until_time_code (0/15)*/,
2253  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2254  },
2255  // -3:00 Arg -03/-02 1999 Oct 3
2256  {
2257  &kAtcAllZonePolicyArg /*zone_policy*/,
2258  "-03/-02" /*format*/,
2259  -720 /*offset_code (-10800/15)*/,
2260  0 /*offset_remainder (-10800%15)*/,
2261  0 /*delta_minutes*/,
2262  1999 /*until_year*/,
2263  10 /*until_month*/,
2264  3 /*until_day*/,
2265  0 /*until_time_code (0/15)*/,
2266  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2267  },
2268  // -4:00 Arg -04/-03 2000 Mar 3
2269  {
2270  &kAtcAllZonePolicyArg /*zone_policy*/,
2271  "-04/-03" /*format*/,
2272  -960 /*offset_code (-14400/15)*/,
2273  0 /*offset_remainder (-14400%15)*/,
2274  0 /*delta_minutes*/,
2275  2000 /*until_year*/,
2276  3 /*until_month*/,
2277  3 /*until_day*/,
2278  0 /*until_time_code (0/15)*/,
2279  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2280  },
2281  // -3:00 - -03 2004 Jun 1
2282  {
2283  NULL /*zone_policy*/,
2284  "-03" /*format*/,
2285  -720 /*offset_code (-10800/15)*/,
2286  0 /*offset_remainder (-10800%15)*/,
2287  0 /*delta_minutes*/,
2288  2004 /*until_year*/,
2289  6 /*until_month*/,
2290  1 /*until_day*/,
2291  0 /*until_time_code (0/15)*/,
2292  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2293  },
2294  // -4:00 - -04 2004 Jun 20
2295  {
2296  NULL /*zone_policy*/,
2297  "-04" /*format*/,
2298  -960 /*offset_code (-14400/15)*/,
2299  0 /*offset_remainder (-14400%15)*/,
2300  0 /*delta_minutes*/,
2301  2004 /*until_year*/,
2302  6 /*until_month*/,
2303  20 /*until_day*/,
2304  0 /*until_time_code (0/15)*/,
2305  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2306  },
2307  // -3:00 Arg -03/-02 2008 Oct 18
2308  {
2309  &kAtcAllZonePolicyArg /*zone_policy*/,
2310  "-03/-02" /*format*/,
2311  -720 /*offset_code (-10800/15)*/,
2312  0 /*offset_remainder (-10800%15)*/,
2313  0 /*delta_minutes*/,
2314  2008 /*until_year*/,
2315  10 /*until_month*/,
2316  18 /*until_day*/,
2317  0 /*until_time_code (0/15)*/,
2318  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2319  },
2320  // -3:00 - -03
2321  {
2322  NULL /*zone_policy*/,
2323  "-03" /*format*/,
2324  -720 /*offset_code (-10800/15)*/,
2325  0 /*offset_remainder (-10800%15)*/,
2326  0 /*delta_minutes*/,
2327  32767 /*until_year*/,
2328  1 /*until_month*/,
2329  1 /*until_day*/,
2330  0 /*until_time_code (0/15)*/,
2331  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2332  },
2333 
2334 };
2335 
2336 static const char kAtcZoneNameAmerica_Argentina_Catamarca[] = "America/Argentina/Catamarca";
2337 
2338 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Catamarca = {
2339  kAtcZoneNameAmerica_Argentina_Catamarca /*name*/,
2340  0x8d40986b /*zone_id*/,
2341  &kAtcAllZoneContext /*zone_context*/,
2342  12 /*num_eras*/,
2343  kAtcZoneEraAmerica_Argentina_Catamarca /*eras*/,
2344  NULL /*target_info*/,
2345 };
2346 
2347 //---------------------------------------------------------------------------
2348 // Zone name: America/Argentina/Cordoba
2349 // Zone Eras: 9
2350 //---------------------------------------------------------------------------
2351 
2352 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Cordoba[] = {
2353  // -4:16:48 - LMT 1894 Oct 31
2354  {
2355  NULL /*zone_policy*/,
2356  "LMT" /*format*/,
2357  -1028 /*offset_code (-15408/15)*/,
2358  12 /*offset_remainder (-15408%15)*/,
2359  0 /*delta_minutes*/,
2360  1894 /*until_year*/,
2361  10 /*until_month*/,
2362  31 /*until_day*/,
2363  0 /*until_time_code (0/15)*/,
2364  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2365  },
2366  // -4:16:48 - CMT 1920 May
2367  {
2368  NULL /*zone_policy*/,
2369  "CMT" /*format*/,
2370  -1028 /*offset_code (-15408/15)*/,
2371  12 /*offset_remainder (-15408%15)*/,
2372  0 /*delta_minutes*/,
2373  1920 /*until_year*/,
2374  5 /*until_month*/,
2375  1 /*until_day*/,
2376  0 /*until_time_code (0/15)*/,
2377  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2378  },
2379  // -4:00 - -04 1930 Dec
2380  {
2381  NULL /*zone_policy*/,
2382  "-04" /*format*/,
2383  -960 /*offset_code (-14400/15)*/,
2384  0 /*offset_remainder (-14400%15)*/,
2385  0 /*delta_minutes*/,
2386  1930 /*until_year*/,
2387  12 /*until_month*/,
2388  1 /*until_day*/,
2389  0 /*until_time_code (0/15)*/,
2390  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2391  },
2392  // -4:00 Arg -04/-03 1969 Oct 5
2393  {
2394  &kAtcAllZonePolicyArg /*zone_policy*/,
2395  "-04/-03" /*format*/,
2396  -960 /*offset_code (-14400/15)*/,
2397  0 /*offset_remainder (-14400%15)*/,
2398  0 /*delta_minutes*/,
2399  1969 /*until_year*/,
2400  10 /*until_month*/,
2401  5 /*until_day*/,
2402  0 /*until_time_code (0/15)*/,
2403  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2404  },
2405  // -3:00 Arg -03/-02 1991 Mar 3
2406  {
2407  &kAtcAllZonePolicyArg /*zone_policy*/,
2408  "-03/-02" /*format*/,
2409  -720 /*offset_code (-10800/15)*/,
2410  0 /*offset_remainder (-10800%15)*/,
2411  0 /*delta_minutes*/,
2412  1991 /*until_year*/,
2413  3 /*until_month*/,
2414  3 /*until_day*/,
2415  0 /*until_time_code (0/15)*/,
2416  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2417  },
2418  // -4:00 - -04 1991 Oct 20
2419  {
2420  NULL /*zone_policy*/,
2421  "-04" /*format*/,
2422  -960 /*offset_code (-14400/15)*/,
2423  0 /*offset_remainder (-14400%15)*/,
2424  0 /*delta_minutes*/,
2425  1991 /*until_year*/,
2426  10 /*until_month*/,
2427  20 /*until_day*/,
2428  0 /*until_time_code (0/15)*/,
2429  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2430  },
2431  // -3:00 Arg -03/-02 1999 Oct 3
2432  {
2433  &kAtcAllZonePolicyArg /*zone_policy*/,
2434  "-03/-02" /*format*/,
2435  -720 /*offset_code (-10800/15)*/,
2436  0 /*offset_remainder (-10800%15)*/,
2437  0 /*delta_minutes*/,
2438  1999 /*until_year*/,
2439  10 /*until_month*/,
2440  3 /*until_day*/,
2441  0 /*until_time_code (0/15)*/,
2442  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2443  },
2444  // -4:00 Arg -04/-03 2000 Mar 3
2445  {
2446  &kAtcAllZonePolicyArg /*zone_policy*/,
2447  "-04/-03" /*format*/,
2448  -960 /*offset_code (-14400/15)*/,
2449  0 /*offset_remainder (-14400%15)*/,
2450  0 /*delta_minutes*/,
2451  2000 /*until_year*/,
2452  3 /*until_month*/,
2453  3 /*until_day*/,
2454  0 /*until_time_code (0/15)*/,
2455  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2456  },
2457  // -3:00 Arg -03/-02
2458  {
2459  &kAtcAllZonePolicyArg /*zone_policy*/,
2460  "-03/-02" /*format*/,
2461  -720 /*offset_code (-10800/15)*/,
2462  0 /*offset_remainder (-10800%15)*/,
2463  0 /*delta_minutes*/,
2464  32767 /*until_year*/,
2465  1 /*until_month*/,
2466  1 /*until_day*/,
2467  0 /*until_time_code (0/15)*/,
2468  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2469  },
2470 
2471 };
2472 
2473 static const char kAtcZoneNameAmerica_Argentina_Cordoba[] = "America/Argentina/Cordoba";
2474 
2475 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Cordoba = {
2476  kAtcZoneNameAmerica_Argentina_Cordoba /*name*/,
2477  0xbfccc308 /*zone_id*/,
2478  &kAtcAllZoneContext /*zone_context*/,
2479  9 /*num_eras*/,
2480  kAtcZoneEraAmerica_Argentina_Cordoba /*eras*/,
2481  NULL /*target_info*/,
2482 };
2483 
2484 //---------------------------------------------------------------------------
2485 // Zone name: America/Argentina/Jujuy
2486 // Zone Eras: 13
2487 //---------------------------------------------------------------------------
2488 
2489 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Jujuy[] = {
2490  // -4:21:12 - LMT 1894 Oct 31
2491  {
2492  NULL /*zone_policy*/,
2493  "LMT" /*format*/,
2494  -1045 /*offset_code (-15672/15)*/,
2495  3 /*offset_remainder (-15672%15)*/,
2496  0 /*delta_minutes*/,
2497  1894 /*until_year*/,
2498  10 /*until_month*/,
2499  31 /*until_day*/,
2500  0 /*until_time_code (0/15)*/,
2501  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2502  },
2503  // -4:16:48 - CMT 1920 May
2504  {
2505  NULL /*zone_policy*/,
2506  "CMT" /*format*/,
2507  -1028 /*offset_code (-15408/15)*/,
2508  12 /*offset_remainder (-15408%15)*/,
2509  0 /*delta_minutes*/,
2510  1920 /*until_year*/,
2511  5 /*until_month*/,
2512  1 /*until_day*/,
2513  0 /*until_time_code (0/15)*/,
2514  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2515  },
2516  // -4:00 - -04 1930 Dec
2517  {
2518  NULL /*zone_policy*/,
2519  "-04" /*format*/,
2520  -960 /*offset_code (-14400/15)*/,
2521  0 /*offset_remainder (-14400%15)*/,
2522  0 /*delta_minutes*/,
2523  1930 /*until_year*/,
2524  12 /*until_month*/,
2525  1 /*until_day*/,
2526  0 /*until_time_code (0/15)*/,
2527  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2528  },
2529  // -4:00 Arg -04/-03 1969 Oct 5
2530  {
2531  &kAtcAllZonePolicyArg /*zone_policy*/,
2532  "-04/-03" /*format*/,
2533  -960 /*offset_code (-14400/15)*/,
2534  0 /*offset_remainder (-14400%15)*/,
2535  0 /*delta_minutes*/,
2536  1969 /*until_year*/,
2537  10 /*until_month*/,
2538  5 /*until_day*/,
2539  0 /*until_time_code (0/15)*/,
2540  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2541  },
2542  // -3:00 Arg -03/-02 1990 Mar 4
2543  {
2544  &kAtcAllZonePolicyArg /*zone_policy*/,
2545  "-03/-02" /*format*/,
2546  -720 /*offset_code (-10800/15)*/,
2547  0 /*offset_remainder (-10800%15)*/,
2548  0 /*delta_minutes*/,
2549  1990 /*until_year*/,
2550  3 /*until_month*/,
2551  4 /*until_day*/,
2552  0 /*until_time_code (0/15)*/,
2553  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2554  },
2555  // -4:00 - -04 1990 Oct 28
2556  {
2557  NULL /*zone_policy*/,
2558  "-04" /*format*/,
2559  -960 /*offset_code (-14400/15)*/,
2560  0 /*offset_remainder (-14400%15)*/,
2561  0 /*delta_minutes*/,
2562  1990 /*until_year*/,
2563  10 /*until_month*/,
2564  28 /*until_day*/,
2565  0 /*until_time_code (0/15)*/,
2566  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2567  },
2568  // -4:00 1:00 -03 1991 Mar 17
2569  {
2570  NULL /*zone_policy*/,
2571  "-03" /*format*/,
2572  -960 /*offset_code (-14400/15)*/,
2573  0 /*offset_remainder (-14400%15)*/,
2574  60 /*delta_minutes*/,
2575  1991 /*until_year*/,
2576  3 /*until_month*/,
2577  17 /*until_day*/,
2578  0 /*until_time_code (0/15)*/,
2579  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2580  },
2581  // -4:00 - -04 1991 Oct 6
2582  {
2583  NULL /*zone_policy*/,
2584  "-04" /*format*/,
2585  -960 /*offset_code (-14400/15)*/,
2586  0 /*offset_remainder (-14400%15)*/,
2587  0 /*delta_minutes*/,
2588  1991 /*until_year*/,
2589  10 /*until_month*/,
2590  6 /*until_day*/,
2591  0 /*until_time_code (0/15)*/,
2592  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2593  },
2594  // -3:00 1:00 -02 1992
2595  {
2596  NULL /*zone_policy*/,
2597  "-02" /*format*/,
2598  -720 /*offset_code (-10800/15)*/,
2599  0 /*offset_remainder (-10800%15)*/,
2600  60 /*delta_minutes*/,
2601  1992 /*until_year*/,
2602  1 /*until_month*/,
2603  1 /*until_day*/,
2604  0 /*until_time_code (0/15)*/,
2605  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2606  },
2607  // -3:00 Arg -03/-02 1999 Oct 3
2608  {
2609  &kAtcAllZonePolicyArg /*zone_policy*/,
2610  "-03/-02" /*format*/,
2611  -720 /*offset_code (-10800/15)*/,
2612  0 /*offset_remainder (-10800%15)*/,
2613  0 /*delta_minutes*/,
2614  1999 /*until_year*/,
2615  10 /*until_month*/,
2616  3 /*until_day*/,
2617  0 /*until_time_code (0/15)*/,
2618  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2619  },
2620  // -4:00 Arg -04/-03 2000 Mar 3
2621  {
2622  &kAtcAllZonePolicyArg /*zone_policy*/,
2623  "-04/-03" /*format*/,
2624  -960 /*offset_code (-14400/15)*/,
2625  0 /*offset_remainder (-14400%15)*/,
2626  0 /*delta_minutes*/,
2627  2000 /*until_year*/,
2628  3 /*until_month*/,
2629  3 /*until_day*/,
2630  0 /*until_time_code (0/15)*/,
2631  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2632  },
2633  // -3:00 Arg -03/-02 2008 Oct 18
2634  {
2635  &kAtcAllZonePolicyArg /*zone_policy*/,
2636  "-03/-02" /*format*/,
2637  -720 /*offset_code (-10800/15)*/,
2638  0 /*offset_remainder (-10800%15)*/,
2639  0 /*delta_minutes*/,
2640  2008 /*until_year*/,
2641  10 /*until_month*/,
2642  18 /*until_day*/,
2643  0 /*until_time_code (0/15)*/,
2644  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2645  },
2646  // -3:00 - -03
2647  {
2648  NULL /*zone_policy*/,
2649  "-03" /*format*/,
2650  -720 /*offset_code (-10800/15)*/,
2651  0 /*offset_remainder (-10800%15)*/,
2652  0 /*delta_minutes*/,
2653  32767 /*until_year*/,
2654  1 /*until_month*/,
2655  1 /*until_day*/,
2656  0 /*until_time_code (0/15)*/,
2657  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2658  },
2659 
2660 };
2661 
2662 static const char kAtcZoneNameAmerica_Argentina_Jujuy[] = "America/Argentina/Jujuy";
2663 
2664 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Jujuy = {
2665  kAtcZoneNameAmerica_Argentina_Jujuy /*name*/,
2666  0x5f2f46c5 /*zone_id*/,
2667  &kAtcAllZoneContext /*zone_context*/,
2668  13 /*num_eras*/,
2669  kAtcZoneEraAmerica_Argentina_Jujuy /*eras*/,
2670  NULL /*target_info*/,
2671 };
2672 
2673 //---------------------------------------------------------------------------
2674 // Zone name: America/Argentina/La_Rioja
2675 // Zone Eras: 12
2676 //---------------------------------------------------------------------------
2677 
2678 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_La_Rioja[] = {
2679  // -4:27:24 - LMT 1894 Oct 31
2680  {
2681  NULL /*zone_policy*/,
2682  "LMT" /*format*/,
2683  -1070 /*offset_code (-16044/15)*/,
2684  6 /*offset_remainder (-16044%15)*/,
2685  0 /*delta_minutes*/,
2686  1894 /*until_year*/,
2687  10 /*until_month*/,
2688  31 /*until_day*/,
2689  0 /*until_time_code (0/15)*/,
2690  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2691  },
2692  // -4:16:48 - CMT 1920 May
2693  {
2694  NULL /*zone_policy*/,
2695  "CMT" /*format*/,
2696  -1028 /*offset_code (-15408/15)*/,
2697  12 /*offset_remainder (-15408%15)*/,
2698  0 /*delta_minutes*/,
2699  1920 /*until_year*/,
2700  5 /*until_month*/,
2701  1 /*until_day*/,
2702  0 /*until_time_code (0/15)*/,
2703  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2704  },
2705  // -4:00 - -04 1930 Dec
2706  {
2707  NULL /*zone_policy*/,
2708  "-04" /*format*/,
2709  -960 /*offset_code (-14400/15)*/,
2710  0 /*offset_remainder (-14400%15)*/,
2711  0 /*delta_minutes*/,
2712  1930 /*until_year*/,
2713  12 /*until_month*/,
2714  1 /*until_day*/,
2715  0 /*until_time_code (0/15)*/,
2716  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2717  },
2718  // -4:00 Arg -04/-03 1969 Oct 5
2719  {
2720  &kAtcAllZonePolicyArg /*zone_policy*/,
2721  "-04/-03" /*format*/,
2722  -960 /*offset_code (-14400/15)*/,
2723  0 /*offset_remainder (-14400%15)*/,
2724  0 /*delta_minutes*/,
2725  1969 /*until_year*/,
2726  10 /*until_month*/,
2727  5 /*until_day*/,
2728  0 /*until_time_code (0/15)*/,
2729  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2730  },
2731  // -3:00 Arg -03/-02 1991 Mar 1
2732  {
2733  &kAtcAllZonePolicyArg /*zone_policy*/,
2734  "-03/-02" /*format*/,
2735  -720 /*offset_code (-10800/15)*/,
2736  0 /*offset_remainder (-10800%15)*/,
2737  0 /*delta_minutes*/,
2738  1991 /*until_year*/,
2739  3 /*until_month*/,
2740  1 /*until_day*/,
2741  0 /*until_time_code (0/15)*/,
2742  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2743  },
2744  // -4:00 - -04 1991 May 7
2745  {
2746  NULL /*zone_policy*/,
2747  "-04" /*format*/,
2748  -960 /*offset_code (-14400/15)*/,
2749  0 /*offset_remainder (-14400%15)*/,
2750  0 /*delta_minutes*/,
2751  1991 /*until_year*/,
2752  5 /*until_month*/,
2753  7 /*until_day*/,
2754  0 /*until_time_code (0/15)*/,
2755  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2756  },
2757  // -3:00 Arg -03/-02 1999 Oct 3
2758  {
2759  &kAtcAllZonePolicyArg /*zone_policy*/,
2760  "-03/-02" /*format*/,
2761  -720 /*offset_code (-10800/15)*/,
2762  0 /*offset_remainder (-10800%15)*/,
2763  0 /*delta_minutes*/,
2764  1999 /*until_year*/,
2765  10 /*until_month*/,
2766  3 /*until_day*/,
2767  0 /*until_time_code (0/15)*/,
2768  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2769  },
2770  // -4:00 Arg -04/-03 2000 Mar 3
2771  {
2772  &kAtcAllZonePolicyArg /*zone_policy*/,
2773  "-04/-03" /*format*/,
2774  -960 /*offset_code (-14400/15)*/,
2775  0 /*offset_remainder (-14400%15)*/,
2776  0 /*delta_minutes*/,
2777  2000 /*until_year*/,
2778  3 /*until_month*/,
2779  3 /*until_day*/,
2780  0 /*until_time_code (0/15)*/,
2781  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2782  },
2783  // -3:00 - -03 2004 Jun 1
2784  {
2785  NULL /*zone_policy*/,
2786  "-03" /*format*/,
2787  -720 /*offset_code (-10800/15)*/,
2788  0 /*offset_remainder (-10800%15)*/,
2789  0 /*delta_minutes*/,
2790  2004 /*until_year*/,
2791  6 /*until_month*/,
2792  1 /*until_day*/,
2793  0 /*until_time_code (0/15)*/,
2794  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2795  },
2796  // -4:00 - -04 2004 Jun 20
2797  {
2798  NULL /*zone_policy*/,
2799  "-04" /*format*/,
2800  -960 /*offset_code (-14400/15)*/,
2801  0 /*offset_remainder (-14400%15)*/,
2802  0 /*delta_minutes*/,
2803  2004 /*until_year*/,
2804  6 /*until_month*/,
2805  20 /*until_day*/,
2806  0 /*until_time_code (0/15)*/,
2807  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2808  },
2809  // -3:00 Arg -03/-02 2008 Oct 18
2810  {
2811  &kAtcAllZonePolicyArg /*zone_policy*/,
2812  "-03/-02" /*format*/,
2813  -720 /*offset_code (-10800/15)*/,
2814  0 /*offset_remainder (-10800%15)*/,
2815  0 /*delta_minutes*/,
2816  2008 /*until_year*/,
2817  10 /*until_month*/,
2818  18 /*until_day*/,
2819  0 /*until_time_code (0/15)*/,
2820  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2821  },
2822  // -3:00 - -03
2823  {
2824  NULL /*zone_policy*/,
2825  "-03" /*format*/,
2826  -720 /*offset_code (-10800/15)*/,
2827  0 /*offset_remainder (-10800%15)*/,
2828  0 /*delta_minutes*/,
2829  32767 /*until_year*/,
2830  1 /*until_month*/,
2831  1 /*until_day*/,
2832  0 /*until_time_code (0/15)*/,
2833  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2834  },
2835 
2836 };
2837 
2838 static const char kAtcZoneNameAmerica_Argentina_La_Rioja[] = "America/Argentina/La_Rioja";
2839 
2840 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_La_Rioja = {
2841  kAtcZoneNameAmerica_Argentina_La_Rioja /*name*/,
2842  0xa46b7eef /*zone_id*/,
2843  &kAtcAllZoneContext /*zone_context*/,
2844  12 /*num_eras*/,
2845  kAtcZoneEraAmerica_Argentina_La_Rioja /*eras*/,
2846  NULL /*target_info*/,
2847 };
2848 
2849 //---------------------------------------------------------------------------
2850 // Zone name: America/Argentina/Mendoza
2851 // Zone Eras: 16
2852 //---------------------------------------------------------------------------
2853 
2854 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Mendoza[] = {
2855  // -4:35:16 - LMT 1894 Oct 31
2856  {
2857  NULL /*zone_policy*/,
2858  "LMT" /*format*/,
2859  -1102 /*offset_code (-16516/15)*/,
2860  14 /*offset_remainder (-16516%15)*/,
2861  0 /*delta_minutes*/,
2862  1894 /*until_year*/,
2863  10 /*until_month*/,
2864  31 /*until_day*/,
2865  0 /*until_time_code (0/15)*/,
2866  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2867  },
2868  // -4:16:48 - CMT 1920 May
2869  {
2870  NULL /*zone_policy*/,
2871  "CMT" /*format*/,
2872  -1028 /*offset_code (-15408/15)*/,
2873  12 /*offset_remainder (-15408%15)*/,
2874  0 /*delta_minutes*/,
2875  1920 /*until_year*/,
2876  5 /*until_month*/,
2877  1 /*until_day*/,
2878  0 /*until_time_code (0/15)*/,
2879  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2880  },
2881  // -4:00 - -04 1930 Dec
2882  {
2883  NULL /*zone_policy*/,
2884  "-04" /*format*/,
2885  -960 /*offset_code (-14400/15)*/,
2886  0 /*offset_remainder (-14400%15)*/,
2887  0 /*delta_minutes*/,
2888  1930 /*until_year*/,
2889  12 /*until_month*/,
2890  1 /*until_day*/,
2891  0 /*until_time_code (0/15)*/,
2892  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2893  },
2894  // -4:00 Arg -04/-03 1969 Oct 5
2895  {
2896  &kAtcAllZonePolicyArg /*zone_policy*/,
2897  "-04/-03" /*format*/,
2898  -960 /*offset_code (-14400/15)*/,
2899  0 /*offset_remainder (-14400%15)*/,
2900  0 /*delta_minutes*/,
2901  1969 /*until_year*/,
2902  10 /*until_month*/,
2903  5 /*until_day*/,
2904  0 /*until_time_code (0/15)*/,
2905  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2906  },
2907  // -3:00 Arg -03/-02 1990 Mar 4
2908  {
2909  &kAtcAllZonePolicyArg /*zone_policy*/,
2910  "-03/-02" /*format*/,
2911  -720 /*offset_code (-10800/15)*/,
2912  0 /*offset_remainder (-10800%15)*/,
2913  0 /*delta_minutes*/,
2914  1990 /*until_year*/,
2915  3 /*until_month*/,
2916  4 /*until_day*/,
2917  0 /*until_time_code (0/15)*/,
2918  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2919  },
2920  // -4:00 - -04 1990 Oct 15
2921  {
2922  NULL /*zone_policy*/,
2923  "-04" /*format*/,
2924  -960 /*offset_code (-14400/15)*/,
2925  0 /*offset_remainder (-14400%15)*/,
2926  0 /*delta_minutes*/,
2927  1990 /*until_year*/,
2928  10 /*until_month*/,
2929  15 /*until_day*/,
2930  0 /*until_time_code (0/15)*/,
2931  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2932  },
2933  // -4:00 1:00 -03 1991 Mar 1
2934  {
2935  NULL /*zone_policy*/,
2936  "-03" /*format*/,
2937  -960 /*offset_code (-14400/15)*/,
2938  0 /*offset_remainder (-14400%15)*/,
2939  60 /*delta_minutes*/,
2940  1991 /*until_year*/,
2941  3 /*until_month*/,
2942  1 /*until_day*/,
2943  0 /*until_time_code (0/15)*/,
2944  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2945  },
2946  // -4:00 - -04 1991 Oct 15
2947  {
2948  NULL /*zone_policy*/,
2949  "-04" /*format*/,
2950  -960 /*offset_code (-14400/15)*/,
2951  0 /*offset_remainder (-14400%15)*/,
2952  0 /*delta_minutes*/,
2953  1991 /*until_year*/,
2954  10 /*until_month*/,
2955  15 /*until_day*/,
2956  0 /*until_time_code (0/15)*/,
2957  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2958  },
2959  // -4:00 1:00 -03 1992 Mar 1
2960  {
2961  NULL /*zone_policy*/,
2962  "-03" /*format*/,
2963  -960 /*offset_code (-14400/15)*/,
2964  0 /*offset_remainder (-14400%15)*/,
2965  60 /*delta_minutes*/,
2966  1992 /*until_year*/,
2967  3 /*until_month*/,
2968  1 /*until_day*/,
2969  0 /*until_time_code (0/15)*/,
2970  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2971  },
2972  // -4:00 - -04 1992 Oct 18
2973  {
2974  NULL /*zone_policy*/,
2975  "-04" /*format*/,
2976  -960 /*offset_code (-14400/15)*/,
2977  0 /*offset_remainder (-14400%15)*/,
2978  0 /*delta_minutes*/,
2979  1992 /*until_year*/,
2980  10 /*until_month*/,
2981  18 /*until_day*/,
2982  0 /*until_time_code (0/15)*/,
2983  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2984  },
2985  // -3:00 Arg -03/-02 1999 Oct 3
2986  {
2987  &kAtcAllZonePolicyArg /*zone_policy*/,
2988  "-03/-02" /*format*/,
2989  -720 /*offset_code (-10800/15)*/,
2990  0 /*offset_remainder (-10800%15)*/,
2991  0 /*delta_minutes*/,
2992  1999 /*until_year*/,
2993  10 /*until_month*/,
2994  3 /*until_day*/,
2995  0 /*until_time_code (0/15)*/,
2996  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
2997  },
2998  // -4:00 Arg -04/-03 2000 Mar 3
2999  {
3000  &kAtcAllZonePolicyArg /*zone_policy*/,
3001  "-04/-03" /*format*/,
3002  -960 /*offset_code (-14400/15)*/,
3003  0 /*offset_remainder (-14400%15)*/,
3004  0 /*delta_minutes*/,
3005  2000 /*until_year*/,
3006  3 /*until_month*/,
3007  3 /*until_day*/,
3008  0 /*until_time_code (0/15)*/,
3009  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3010  },
3011  // -3:00 - -03 2004 May 23
3012  {
3013  NULL /*zone_policy*/,
3014  "-03" /*format*/,
3015  -720 /*offset_code (-10800/15)*/,
3016  0 /*offset_remainder (-10800%15)*/,
3017  0 /*delta_minutes*/,
3018  2004 /*until_year*/,
3019  5 /*until_month*/,
3020  23 /*until_day*/,
3021  0 /*until_time_code (0/15)*/,
3022  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3023  },
3024  // -4:00 - -04 2004 Sep 26
3025  {
3026  NULL /*zone_policy*/,
3027  "-04" /*format*/,
3028  -960 /*offset_code (-14400/15)*/,
3029  0 /*offset_remainder (-14400%15)*/,
3030  0 /*delta_minutes*/,
3031  2004 /*until_year*/,
3032  9 /*until_month*/,
3033  26 /*until_day*/,
3034  0 /*until_time_code (0/15)*/,
3035  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3036  },
3037  // -3:00 Arg -03/-02 2008 Oct 18
3038  {
3039  &kAtcAllZonePolicyArg /*zone_policy*/,
3040  "-03/-02" /*format*/,
3041  -720 /*offset_code (-10800/15)*/,
3042  0 /*offset_remainder (-10800%15)*/,
3043  0 /*delta_minutes*/,
3044  2008 /*until_year*/,
3045  10 /*until_month*/,
3046  18 /*until_day*/,
3047  0 /*until_time_code (0/15)*/,
3048  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3049  },
3050  // -3:00 - -03
3051  {
3052  NULL /*zone_policy*/,
3053  "-03" /*format*/,
3054  -720 /*offset_code (-10800/15)*/,
3055  0 /*offset_remainder (-10800%15)*/,
3056  0 /*delta_minutes*/,
3057  32767 /*until_year*/,
3058  1 /*until_month*/,
3059  1 /*until_day*/,
3060  0 /*until_time_code (0/15)*/,
3061  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3062  },
3063 
3064 };
3065 
3066 static const char kAtcZoneNameAmerica_Argentina_Mendoza[] = "America/Argentina/Mendoza";
3067 
3068 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Mendoza = {
3069  kAtcZoneNameAmerica_Argentina_Mendoza /*name*/,
3070  0xa9f72d5c /*zone_id*/,
3071  &kAtcAllZoneContext /*zone_context*/,
3072  16 /*num_eras*/,
3073  kAtcZoneEraAmerica_Argentina_Mendoza /*eras*/,
3074  NULL /*target_info*/,
3075 };
3076 
3077 //---------------------------------------------------------------------------
3078 // Zone name: America/Argentina/Rio_Gallegos
3079 // Zone Eras: 10
3080 //---------------------------------------------------------------------------
3081 
3082 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Rio_Gallegos[] = {
3083  // -4:36:52 - LMT 1894 Oct 31
3084  {
3085  NULL /*zone_policy*/,
3086  "LMT" /*format*/,
3087  -1108 /*offset_code (-16612/15)*/,
3088  8 /*offset_remainder (-16612%15)*/,
3089  0 /*delta_minutes*/,
3090  1894 /*until_year*/,
3091  10 /*until_month*/,
3092  31 /*until_day*/,
3093  0 /*until_time_code (0/15)*/,
3094  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3095  },
3096  // -4:16:48 - CMT 1920 May
3097  {
3098  NULL /*zone_policy*/,
3099  "CMT" /*format*/,
3100  -1028 /*offset_code (-15408/15)*/,
3101  12 /*offset_remainder (-15408%15)*/,
3102  0 /*delta_minutes*/,
3103  1920 /*until_year*/,
3104  5 /*until_month*/,
3105  1 /*until_day*/,
3106  0 /*until_time_code (0/15)*/,
3107  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3108  },
3109  // -4:00 - -04 1930 Dec
3110  {
3111  NULL /*zone_policy*/,
3112  "-04" /*format*/,
3113  -960 /*offset_code (-14400/15)*/,
3114  0 /*offset_remainder (-14400%15)*/,
3115  0 /*delta_minutes*/,
3116  1930 /*until_year*/,
3117  12 /*until_month*/,
3118  1 /*until_day*/,
3119  0 /*until_time_code (0/15)*/,
3120  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3121  },
3122  // -4:00 Arg -04/-03 1969 Oct 5
3123  {
3124  &kAtcAllZonePolicyArg /*zone_policy*/,
3125  "-04/-03" /*format*/,
3126  -960 /*offset_code (-14400/15)*/,
3127  0 /*offset_remainder (-14400%15)*/,
3128  0 /*delta_minutes*/,
3129  1969 /*until_year*/,
3130  10 /*until_month*/,
3131  5 /*until_day*/,
3132  0 /*until_time_code (0/15)*/,
3133  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3134  },
3135  // -3:00 Arg -03/-02 1999 Oct 3
3136  {
3137  &kAtcAllZonePolicyArg /*zone_policy*/,
3138  "-03/-02" /*format*/,
3139  -720 /*offset_code (-10800/15)*/,
3140  0 /*offset_remainder (-10800%15)*/,
3141  0 /*delta_minutes*/,
3142  1999 /*until_year*/,
3143  10 /*until_month*/,
3144  3 /*until_day*/,
3145  0 /*until_time_code (0/15)*/,
3146  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3147  },
3148  // -4:00 Arg -04/-03 2000 Mar 3
3149  {
3150  &kAtcAllZonePolicyArg /*zone_policy*/,
3151  "-04/-03" /*format*/,
3152  -960 /*offset_code (-14400/15)*/,
3153  0 /*offset_remainder (-14400%15)*/,
3154  0 /*delta_minutes*/,
3155  2000 /*until_year*/,
3156  3 /*until_month*/,
3157  3 /*until_day*/,
3158  0 /*until_time_code (0/15)*/,
3159  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3160  },
3161  // -3:00 - -03 2004 Jun 1
3162  {
3163  NULL /*zone_policy*/,
3164  "-03" /*format*/,
3165  -720 /*offset_code (-10800/15)*/,
3166  0 /*offset_remainder (-10800%15)*/,
3167  0 /*delta_minutes*/,
3168  2004 /*until_year*/,
3169  6 /*until_month*/,
3170  1 /*until_day*/,
3171  0 /*until_time_code (0/15)*/,
3172  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3173  },
3174  // -4:00 - -04 2004 Jun 20
3175  {
3176  NULL /*zone_policy*/,
3177  "-04" /*format*/,
3178  -960 /*offset_code (-14400/15)*/,
3179  0 /*offset_remainder (-14400%15)*/,
3180  0 /*delta_minutes*/,
3181  2004 /*until_year*/,
3182  6 /*until_month*/,
3183  20 /*until_day*/,
3184  0 /*until_time_code (0/15)*/,
3185  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3186  },
3187  // -3:00 Arg -03/-02 2008 Oct 18
3188  {
3189  &kAtcAllZonePolicyArg /*zone_policy*/,
3190  "-03/-02" /*format*/,
3191  -720 /*offset_code (-10800/15)*/,
3192  0 /*offset_remainder (-10800%15)*/,
3193  0 /*delta_minutes*/,
3194  2008 /*until_year*/,
3195  10 /*until_month*/,
3196  18 /*until_day*/,
3197  0 /*until_time_code (0/15)*/,
3198  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3199  },
3200  // -3:00 - -03
3201  {
3202  NULL /*zone_policy*/,
3203  "-03" /*format*/,
3204  -720 /*offset_code (-10800/15)*/,
3205  0 /*offset_remainder (-10800%15)*/,
3206  0 /*delta_minutes*/,
3207  32767 /*until_year*/,
3208  1 /*until_month*/,
3209  1 /*until_day*/,
3210  0 /*until_time_code (0/15)*/,
3211  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3212  },
3213 
3214 };
3215 
3216 static const char kAtcZoneNameAmerica_Argentina_Rio_Gallegos[] = "America/Argentina/Rio_Gallegos";
3217 
3218 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Rio_Gallegos = {
3219  kAtcZoneNameAmerica_Argentina_Rio_Gallegos /*name*/,
3220  0xc5b0f565 /*zone_id*/,
3221  &kAtcAllZoneContext /*zone_context*/,
3222  10 /*num_eras*/,
3223  kAtcZoneEraAmerica_Argentina_Rio_Gallegos /*eras*/,
3224  NULL /*target_info*/,
3225 };
3226 
3227 //---------------------------------------------------------------------------
3228 // Zone name: America/Argentina/Salta
3229 // Zone Eras: 10
3230 //---------------------------------------------------------------------------
3231 
3232 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Salta[] = {
3233  // -4:21:40 - LMT 1894 Oct 31
3234  {
3235  NULL /*zone_policy*/,
3236  "LMT" /*format*/,
3237  -1047 /*offset_code (-15700/15)*/,
3238  5 /*offset_remainder (-15700%15)*/,
3239  0 /*delta_minutes*/,
3240  1894 /*until_year*/,
3241  10 /*until_month*/,
3242  31 /*until_day*/,
3243  0 /*until_time_code (0/15)*/,
3244  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3245  },
3246  // -4:16:48 - CMT 1920 May
3247  {
3248  NULL /*zone_policy*/,
3249  "CMT" /*format*/,
3250  -1028 /*offset_code (-15408/15)*/,
3251  12 /*offset_remainder (-15408%15)*/,
3252  0 /*delta_minutes*/,
3253  1920 /*until_year*/,
3254  5 /*until_month*/,
3255  1 /*until_day*/,
3256  0 /*until_time_code (0/15)*/,
3257  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3258  },
3259  // -4:00 - -04 1930 Dec
3260  {
3261  NULL /*zone_policy*/,
3262  "-04" /*format*/,
3263  -960 /*offset_code (-14400/15)*/,
3264  0 /*offset_remainder (-14400%15)*/,
3265  0 /*delta_minutes*/,
3266  1930 /*until_year*/,
3267  12 /*until_month*/,
3268  1 /*until_day*/,
3269  0 /*until_time_code (0/15)*/,
3270  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3271  },
3272  // -4:00 Arg -04/-03 1969 Oct 5
3273  {
3274  &kAtcAllZonePolicyArg /*zone_policy*/,
3275  "-04/-03" /*format*/,
3276  -960 /*offset_code (-14400/15)*/,
3277  0 /*offset_remainder (-14400%15)*/,
3278  0 /*delta_minutes*/,
3279  1969 /*until_year*/,
3280  10 /*until_month*/,
3281  5 /*until_day*/,
3282  0 /*until_time_code (0/15)*/,
3283  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3284  },
3285  // -3:00 Arg -03/-02 1991 Mar 3
3286  {
3287  &kAtcAllZonePolicyArg /*zone_policy*/,
3288  "-03/-02" /*format*/,
3289  -720 /*offset_code (-10800/15)*/,
3290  0 /*offset_remainder (-10800%15)*/,
3291  0 /*delta_minutes*/,
3292  1991 /*until_year*/,
3293  3 /*until_month*/,
3294  3 /*until_day*/,
3295  0 /*until_time_code (0/15)*/,
3296  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3297  },
3298  // -4:00 - -04 1991 Oct 20
3299  {
3300  NULL /*zone_policy*/,
3301  "-04" /*format*/,
3302  -960 /*offset_code (-14400/15)*/,
3303  0 /*offset_remainder (-14400%15)*/,
3304  0 /*delta_minutes*/,
3305  1991 /*until_year*/,
3306  10 /*until_month*/,
3307  20 /*until_day*/,
3308  0 /*until_time_code (0/15)*/,
3309  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3310  },
3311  // -3:00 Arg -03/-02 1999 Oct 3
3312  {
3313  &kAtcAllZonePolicyArg /*zone_policy*/,
3314  "-03/-02" /*format*/,
3315  -720 /*offset_code (-10800/15)*/,
3316  0 /*offset_remainder (-10800%15)*/,
3317  0 /*delta_minutes*/,
3318  1999 /*until_year*/,
3319  10 /*until_month*/,
3320  3 /*until_day*/,
3321  0 /*until_time_code (0/15)*/,
3322  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3323  },
3324  // -4:00 Arg -04/-03 2000 Mar 3
3325  {
3326  &kAtcAllZonePolicyArg /*zone_policy*/,
3327  "-04/-03" /*format*/,
3328  -960 /*offset_code (-14400/15)*/,
3329  0 /*offset_remainder (-14400%15)*/,
3330  0 /*delta_minutes*/,
3331  2000 /*until_year*/,
3332  3 /*until_month*/,
3333  3 /*until_day*/,
3334  0 /*until_time_code (0/15)*/,
3335  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3336  },
3337  // -3:00 Arg -03/-02 2008 Oct 18
3338  {
3339  &kAtcAllZonePolicyArg /*zone_policy*/,
3340  "-03/-02" /*format*/,
3341  -720 /*offset_code (-10800/15)*/,
3342  0 /*offset_remainder (-10800%15)*/,
3343  0 /*delta_minutes*/,
3344  2008 /*until_year*/,
3345  10 /*until_month*/,
3346  18 /*until_day*/,
3347  0 /*until_time_code (0/15)*/,
3348  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3349  },
3350  // -3:00 - -03
3351  {
3352  NULL /*zone_policy*/,
3353  "-03" /*format*/,
3354  -720 /*offset_code (-10800/15)*/,
3355  0 /*offset_remainder (-10800%15)*/,
3356  0 /*delta_minutes*/,
3357  32767 /*until_year*/,
3358  1 /*until_month*/,
3359  1 /*until_day*/,
3360  0 /*until_time_code (0/15)*/,
3361  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3362  },
3363 
3364 };
3365 
3366 static const char kAtcZoneNameAmerica_Argentina_Salta[] = "America/Argentina/Salta";
3367 
3368 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Salta = {
3369  kAtcZoneNameAmerica_Argentina_Salta /*name*/,
3370  0x5fc73403 /*zone_id*/,
3371  &kAtcAllZoneContext /*zone_context*/,
3372  10 /*num_eras*/,
3373  kAtcZoneEraAmerica_Argentina_Salta /*eras*/,
3374  NULL /*target_info*/,
3375 };
3376 
3377 //---------------------------------------------------------------------------
3378 // Zone name: America/Argentina/San_Juan
3379 // Zone Eras: 12
3380 //---------------------------------------------------------------------------
3381 
3382 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_San_Juan[] = {
3383  // -4:34:04 - LMT 1894 Oct 31
3384  {
3385  NULL /*zone_policy*/,
3386  "LMT" /*format*/,
3387  -1097 /*offset_code (-16444/15)*/,
3388  11 /*offset_remainder (-16444%15)*/,
3389  0 /*delta_minutes*/,
3390  1894 /*until_year*/,
3391  10 /*until_month*/,
3392  31 /*until_day*/,
3393  0 /*until_time_code (0/15)*/,
3394  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3395  },
3396  // -4:16:48 - CMT 1920 May
3397  {
3398  NULL /*zone_policy*/,
3399  "CMT" /*format*/,
3400  -1028 /*offset_code (-15408/15)*/,
3401  12 /*offset_remainder (-15408%15)*/,
3402  0 /*delta_minutes*/,
3403  1920 /*until_year*/,
3404  5 /*until_month*/,
3405  1 /*until_day*/,
3406  0 /*until_time_code (0/15)*/,
3407  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3408  },
3409  // -4:00 - -04 1930 Dec
3410  {
3411  NULL /*zone_policy*/,
3412  "-04" /*format*/,
3413  -960 /*offset_code (-14400/15)*/,
3414  0 /*offset_remainder (-14400%15)*/,
3415  0 /*delta_minutes*/,
3416  1930 /*until_year*/,
3417  12 /*until_month*/,
3418  1 /*until_day*/,
3419  0 /*until_time_code (0/15)*/,
3420  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3421  },
3422  // -4:00 Arg -04/-03 1969 Oct 5
3423  {
3424  &kAtcAllZonePolicyArg /*zone_policy*/,
3425  "-04/-03" /*format*/,
3426  -960 /*offset_code (-14400/15)*/,
3427  0 /*offset_remainder (-14400%15)*/,
3428  0 /*delta_minutes*/,
3429  1969 /*until_year*/,
3430  10 /*until_month*/,
3431  5 /*until_day*/,
3432  0 /*until_time_code (0/15)*/,
3433  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3434  },
3435  // -3:00 Arg -03/-02 1991 Mar 1
3436  {
3437  &kAtcAllZonePolicyArg /*zone_policy*/,
3438  "-03/-02" /*format*/,
3439  -720 /*offset_code (-10800/15)*/,
3440  0 /*offset_remainder (-10800%15)*/,
3441  0 /*delta_minutes*/,
3442  1991 /*until_year*/,
3443  3 /*until_month*/,
3444  1 /*until_day*/,
3445  0 /*until_time_code (0/15)*/,
3446  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3447  },
3448  // -4:00 - -04 1991 May 7
3449  {
3450  NULL /*zone_policy*/,
3451  "-04" /*format*/,
3452  -960 /*offset_code (-14400/15)*/,
3453  0 /*offset_remainder (-14400%15)*/,
3454  0 /*delta_minutes*/,
3455  1991 /*until_year*/,
3456  5 /*until_month*/,
3457  7 /*until_day*/,
3458  0 /*until_time_code (0/15)*/,
3459  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3460  },
3461  // -3:00 Arg -03/-02 1999 Oct 3
3462  {
3463  &kAtcAllZonePolicyArg /*zone_policy*/,
3464  "-03/-02" /*format*/,
3465  -720 /*offset_code (-10800/15)*/,
3466  0 /*offset_remainder (-10800%15)*/,
3467  0 /*delta_minutes*/,
3468  1999 /*until_year*/,
3469  10 /*until_month*/,
3470  3 /*until_day*/,
3471  0 /*until_time_code (0/15)*/,
3472  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3473  },
3474  // -4:00 Arg -04/-03 2000 Mar 3
3475  {
3476  &kAtcAllZonePolicyArg /*zone_policy*/,
3477  "-04/-03" /*format*/,
3478  -960 /*offset_code (-14400/15)*/,
3479  0 /*offset_remainder (-14400%15)*/,
3480  0 /*delta_minutes*/,
3481  2000 /*until_year*/,
3482  3 /*until_month*/,
3483  3 /*until_day*/,
3484  0 /*until_time_code (0/15)*/,
3485  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3486  },
3487  // -3:00 - -03 2004 May 31
3488  {
3489  NULL /*zone_policy*/,
3490  "-03" /*format*/,
3491  -720 /*offset_code (-10800/15)*/,
3492  0 /*offset_remainder (-10800%15)*/,
3493  0 /*delta_minutes*/,
3494  2004 /*until_year*/,
3495  5 /*until_month*/,
3496  31 /*until_day*/,
3497  0 /*until_time_code (0/15)*/,
3498  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3499  },
3500  // -4:00 - -04 2004 Jul 25
3501  {
3502  NULL /*zone_policy*/,
3503  "-04" /*format*/,
3504  -960 /*offset_code (-14400/15)*/,
3505  0 /*offset_remainder (-14400%15)*/,
3506  0 /*delta_minutes*/,
3507  2004 /*until_year*/,
3508  7 /*until_month*/,
3509  25 /*until_day*/,
3510  0 /*until_time_code (0/15)*/,
3511  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3512  },
3513  // -3:00 Arg -03/-02 2008 Oct 18
3514  {
3515  &kAtcAllZonePolicyArg /*zone_policy*/,
3516  "-03/-02" /*format*/,
3517  -720 /*offset_code (-10800/15)*/,
3518  0 /*offset_remainder (-10800%15)*/,
3519  0 /*delta_minutes*/,
3520  2008 /*until_year*/,
3521  10 /*until_month*/,
3522  18 /*until_day*/,
3523  0 /*until_time_code (0/15)*/,
3524  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3525  },
3526  // -3:00 - -03
3527  {
3528  NULL /*zone_policy*/,
3529  "-03" /*format*/,
3530  -720 /*offset_code (-10800/15)*/,
3531  0 /*offset_remainder (-10800%15)*/,
3532  0 /*delta_minutes*/,
3533  32767 /*until_year*/,
3534  1 /*until_month*/,
3535  1 /*until_day*/,
3536  0 /*until_time_code (0/15)*/,
3537  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3538  },
3539 
3540 };
3541 
3542 static const char kAtcZoneNameAmerica_Argentina_San_Juan[] = "America/Argentina/San_Juan";
3543 
3544 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_San_Juan = {
3545  kAtcZoneNameAmerica_Argentina_San_Juan /*name*/,
3546  0x3e1009bd /*zone_id*/,
3547  &kAtcAllZoneContext /*zone_context*/,
3548  12 /*num_eras*/,
3549  kAtcZoneEraAmerica_Argentina_San_Juan /*eras*/,
3550  NULL /*target_info*/,
3551 };
3552 
3553 //---------------------------------------------------------------------------
3554 // Zone name: America/Argentina/San_Luis
3555 // Zone Eras: 16
3556 //---------------------------------------------------------------------------
3557 
3558 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_San_Luis[] = {
3559  // -4:25:24 - LMT 1894 Oct 31
3560  {
3561  NULL /*zone_policy*/,
3562  "LMT" /*format*/,
3563  -1062 /*offset_code (-15924/15)*/,
3564  6 /*offset_remainder (-15924%15)*/,
3565  0 /*delta_minutes*/,
3566  1894 /*until_year*/,
3567  10 /*until_month*/,
3568  31 /*until_day*/,
3569  0 /*until_time_code (0/15)*/,
3570  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3571  },
3572  // -4:16:48 - CMT 1920 May
3573  {
3574  NULL /*zone_policy*/,
3575  "CMT" /*format*/,
3576  -1028 /*offset_code (-15408/15)*/,
3577  12 /*offset_remainder (-15408%15)*/,
3578  0 /*delta_minutes*/,
3579  1920 /*until_year*/,
3580  5 /*until_month*/,
3581  1 /*until_day*/,
3582  0 /*until_time_code (0/15)*/,
3583  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3584  },
3585  // -4:00 - -04 1930 Dec
3586  {
3587  NULL /*zone_policy*/,
3588  "-04" /*format*/,
3589  -960 /*offset_code (-14400/15)*/,
3590  0 /*offset_remainder (-14400%15)*/,
3591  0 /*delta_minutes*/,
3592  1930 /*until_year*/,
3593  12 /*until_month*/,
3594  1 /*until_day*/,
3595  0 /*until_time_code (0/15)*/,
3596  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3597  },
3598  // -4:00 Arg -04/-03 1969 Oct 5
3599  {
3600  &kAtcAllZonePolicyArg /*zone_policy*/,
3601  "-04/-03" /*format*/,
3602  -960 /*offset_code (-14400/15)*/,
3603  0 /*offset_remainder (-14400%15)*/,
3604  0 /*delta_minutes*/,
3605  1969 /*until_year*/,
3606  10 /*until_month*/,
3607  5 /*until_day*/,
3608  0 /*until_time_code (0/15)*/,
3609  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3610  },
3611  // -3:00 Arg -03/-02 1990
3612  {
3613  &kAtcAllZonePolicyArg /*zone_policy*/,
3614  "-03/-02" /*format*/,
3615  -720 /*offset_code (-10800/15)*/,
3616  0 /*offset_remainder (-10800%15)*/,
3617  0 /*delta_minutes*/,
3618  1990 /*until_year*/,
3619  1 /*until_month*/,
3620  1 /*until_day*/,
3621  0 /*until_time_code (0/15)*/,
3622  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3623  },
3624  // -3:00 1:00 -02 1990 Mar 14
3625  {
3626  NULL /*zone_policy*/,
3627  "-02" /*format*/,
3628  -720 /*offset_code (-10800/15)*/,
3629  0 /*offset_remainder (-10800%15)*/,
3630  60 /*delta_minutes*/,
3631  1990 /*until_year*/,
3632  3 /*until_month*/,
3633  14 /*until_day*/,
3634  0 /*until_time_code (0/15)*/,
3635  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3636  },
3637  // -4:00 - -04 1990 Oct 15
3638  {
3639  NULL /*zone_policy*/,
3640  "-04" /*format*/,
3641  -960 /*offset_code (-14400/15)*/,
3642  0 /*offset_remainder (-14400%15)*/,
3643  0 /*delta_minutes*/,
3644  1990 /*until_year*/,
3645  10 /*until_month*/,
3646  15 /*until_day*/,
3647  0 /*until_time_code (0/15)*/,
3648  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3649  },
3650  // -4:00 1:00 -03 1991 Mar 1
3651  {
3652  NULL /*zone_policy*/,
3653  "-03" /*format*/,
3654  -960 /*offset_code (-14400/15)*/,
3655  0 /*offset_remainder (-14400%15)*/,
3656  60 /*delta_minutes*/,
3657  1991 /*until_year*/,
3658  3 /*until_month*/,
3659  1 /*until_day*/,
3660  0 /*until_time_code (0/15)*/,
3661  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3662  },
3663  // -4:00 - -04 1991 Jun 1
3664  {
3665  NULL /*zone_policy*/,
3666  "-04" /*format*/,
3667  -960 /*offset_code (-14400/15)*/,
3668  0 /*offset_remainder (-14400%15)*/,
3669  0 /*delta_minutes*/,
3670  1991 /*until_year*/,
3671  6 /*until_month*/,
3672  1 /*until_day*/,
3673  0 /*until_time_code (0/15)*/,
3674  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3675  },
3676  // -3:00 - -03 1999 Oct 3
3677  {
3678  NULL /*zone_policy*/,
3679  "-03" /*format*/,
3680  -720 /*offset_code (-10800/15)*/,
3681  0 /*offset_remainder (-10800%15)*/,
3682  0 /*delta_minutes*/,
3683  1999 /*until_year*/,
3684  10 /*until_month*/,
3685  3 /*until_day*/,
3686  0 /*until_time_code (0/15)*/,
3687  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3688  },
3689  // -4:00 1:00 -03 2000 Mar 3
3690  {
3691  NULL /*zone_policy*/,
3692  "-03" /*format*/,
3693  -960 /*offset_code (-14400/15)*/,
3694  0 /*offset_remainder (-14400%15)*/,
3695  60 /*delta_minutes*/,
3696  2000 /*until_year*/,
3697  3 /*until_month*/,
3698  3 /*until_day*/,
3699  0 /*until_time_code (0/15)*/,
3700  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3701  },
3702  // -3:00 - -03 2004 May 31
3703  {
3704  NULL /*zone_policy*/,
3705  "-03" /*format*/,
3706  -720 /*offset_code (-10800/15)*/,
3707  0 /*offset_remainder (-10800%15)*/,
3708  0 /*delta_minutes*/,
3709  2004 /*until_year*/,
3710  5 /*until_month*/,
3711  31 /*until_day*/,
3712  0 /*until_time_code (0/15)*/,
3713  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3714  },
3715  // -4:00 - -04 2004 Jul 25
3716  {
3717  NULL /*zone_policy*/,
3718  "-04" /*format*/,
3719  -960 /*offset_code (-14400/15)*/,
3720  0 /*offset_remainder (-14400%15)*/,
3721  0 /*delta_minutes*/,
3722  2004 /*until_year*/,
3723  7 /*until_month*/,
3724  25 /*until_day*/,
3725  0 /*until_time_code (0/15)*/,
3726  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3727  },
3728  // -3:00 Arg -03/-02 2008 Jan 21
3729  {
3730  &kAtcAllZonePolicyArg /*zone_policy*/,
3731  "-03/-02" /*format*/,
3732  -720 /*offset_code (-10800/15)*/,
3733  0 /*offset_remainder (-10800%15)*/,
3734  0 /*delta_minutes*/,
3735  2008 /*until_year*/,
3736  1 /*until_month*/,
3737  21 /*until_day*/,
3738  0 /*until_time_code (0/15)*/,
3739  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3740  },
3741  // -4:00 SanLuis -04/-03 2009 Oct 11
3742  {
3743  &kAtcAllZonePolicySanLuis /*zone_policy*/,
3744  "-04/-03" /*format*/,
3745  -960 /*offset_code (-14400/15)*/,
3746  0 /*offset_remainder (-14400%15)*/,
3747  0 /*delta_minutes*/,
3748  2009 /*until_year*/,
3749  10 /*until_month*/,
3750  11 /*until_day*/,
3751  0 /*until_time_code (0/15)*/,
3752  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3753  },
3754  // -3:00 - -03
3755  {
3756  NULL /*zone_policy*/,
3757  "-03" /*format*/,
3758  -720 /*offset_code (-10800/15)*/,
3759  0 /*offset_remainder (-10800%15)*/,
3760  0 /*delta_minutes*/,
3761  32767 /*until_year*/,
3762  1 /*until_month*/,
3763  1 /*until_day*/,
3764  0 /*until_time_code (0/15)*/,
3765  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3766  },
3767 
3768 };
3769 
3770 static const char kAtcZoneNameAmerica_Argentina_San_Luis[] = "America/Argentina/San_Luis";
3771 
3772 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_San_Luis = {
3773  kAtcZoneNameAmerica_Argentina_San_Luis /*name*/,
3774  0x3e11238c /*zone_id*/,
3775  &kAtcAllZoneContext /*zone_context*/,
3776  16 /*num_eras*/,
3777  kAtcZoneEraAmerica_Argentina_San_Luis /*eras*/,
3778  NULL /*target_info*/,
3779 };
3780 
3781 //---------------------------------------------------------------------------
3782 // Zone name: America/Argentina/Tucuman
3783 // Zone Eras: 11
3784 //---------------------------------------------------------------------------
3785 
3786 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Tucuman[] = {
3787  // -4:20:52 - LMT 1894 Oct 31
3788  {
3789  NULL /*zone_policy*/,
3790  "LMT" /*format*/,
3791  -1044 /*offset_code (-15652/15)*/,
3792  8 /*offset_remainder (-15652%15)*/,
3793  0 /*delta_minutes*/,
3794  1894 /*until_year*/,
3795  10 /*until_month*/,
3796  31 /*until_day*/,
3797  0 /*until_time_code (0/15)*/,
3798  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3799  },
3800  // -4:16:48 - CMT 1920 May
3801  {
3802  NULL /*zone_policy*/,
3803  "CMT" /*format*/,
3804  -1028 /*offset_code (-15408/15)*/,
3805  12 /*offset_remainder (-15408%15)*/,
3806  0 /*delta_minutes*/,
3807  1920 /*until_year*/,
3808  5 /*until_month*/,
3809  1 /*until_day*/,
3810  0 /*until_time_code (0/15)*/,
3811  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3812  },
3813  // -4:00 - -04 1930 Dec
3814  {
3815  NULL /*zone_policy*/,
3816  "-04" /*format*/,
3817  -960 /*offset_code (-14400/15)*/,
3818  0 /*offset_remainder (-14400%15)*/,
3819  0 /*delta_minutes*/,
3820  1930 /*until_year*/,
3821  12 /*until_month*/,
3822  1 /*until_day*/,
3823  0 /*until_time_code (0/15)*/,
3824  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3825  },
3826  // -4:00 Arg -04/-03 1969 Oct 5
3827  {
3828  &kAtcAllZonePolicyArg /*zone_policy*/,
3829  "-04/-03" /*format*/,
3830  -960 /*offset_code (-14400/15)*/,
3831  0 /*offset_remainder (-14400%15)*/,
3832  0 /*delta_minutes*/,
3833  1969 /*until_year*/,
3834  10 /*until_month*/,
3835  5 /*until_day*/,
3836  0 /*until_time_code (0/15)*/,
3837  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3838  },
3839  // -3:00 Arg -03/-02 1991 Mar 3
3840  {
3841  &kAtcAllZonePolicyArg /*zone_policy*/,
3842  "-03/-02" /*format*/,
3843  -720 /*offset_code (-10800/15)*/,
3844  0 /*offset_remainder (-10800%15)*/,
3845  0 /*delta_minutes*/,
3846  1991 /*until_year*/,
3847  3 /*until_month*/,
3848  3 /*until_day*/,
3849  0 /*until_time_code (0/15)*/,
3850  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3851  },
3852  // -4:00 - -04 1991 Oct 20
3853  {
3854  NULL /*zone_policy*/,
3855  "-04" /*format*/,
3856  -960 /*offset_code (-14400/15)*/,
3857  0 /*offset_remainder (-14400%15)*/,
3858  0 /*delta_minutes*/,
3859  1991 /*until_year*/,
3860  10 /*until_month*/,
3861  20 /*until_day*/,
3862  0 /*until_time_code (0/15)*/,
3863  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3864  },
3865  // -3:00 Arg -03/-02 1999 Oct 3
3866  {
3867  &kAtcAllZonePolicyArg /*zone_policy*/,
3868  "-03/-02" /*format*/,
3869  -720 /*offset_code (-10800/15)*/,
3870  0 /*offset_remainder (-10800%15)*/,
3871  0 /*delta_minutes*/,
3872  1999 /*until_year*/,
3873  10 /*until_month*/,
3874  3 /*until_day*/,
3875  0 /*until_time_code (0/15)*/,
3876  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3877  },
3878  // -4:00 Arg -04/-03 2000 Mar 3
3879  {
3880  &kAtcAllZonePolicyArg /*zone_policy*/,
3881  "-04/-03" /*format*/,
3882  -960 /*offset_code (-14400/15)*/,
3883  0 /*offset_remainder (-14400%15)*/,
3884  0 /*delta_minutes*/,
3885  2000 /*until_year*/,
3886  3 /*until_month*/,
3887  3 /*until_day*/,
3888  0 /*until_time_code (0/15)*/,
3889  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3890  },
3891  // -3:00 - -03 2004 Jun 1
3892  {
3893  NULL /*zone_policy*/,
3894  "-03" /*format*/,
3895  -720 /*offset_code (-10800/15)*/,
3896  0 /*offset_remainder (-10800%15)*/,
3897  0 /*delta_minutes*/,
3898  2004 /*until_year*/,
3899  6 /*until_month*/,
3900  1 /*until_day*/,
3901  0 /*until_time_code (0/15)*/,
3902  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3903  },
3904  // -4:00 - -04 2004 Jun 13
3905  {
3906  NULL /*zone_policy*/,
3907  "-04" /*format*/,
3908  -960 /*offset_code (-14400/15)*/,
3909  0 /*offset_remainder (-14400%15)*/,
3910  0 /*delta_minutes*/,
3911  2004 /*until_year*/,
3912  6 /*until_month*/,
3913  13 /*until_day*/,
3914  0 /*until_time_code (0/15)*/,
3915  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3916  },
3917  // -3:00 Arg -03/-02
3918  {
3919  &kAtcAllZonePolicyArg /*zone_policy*/,
3920  "-03/-02" /*format*/,
3921  -720 /*offset_code (-10800/15)*/,
3922  0 /*offset_remainder (-10800%15)*/,
3923  0 /*delta_minutes*/,
3924  32767 /*until_year*/,
3925  1 /*until_month*/,
3926  1 /*until_day*/,
3927  0 /*until_time_code (0/15)*/,
3928  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3929  },
3930 
3931 };
3932 
3933 static const char kAtcZoneNameAmerica_Argentina_Tucuman[] = "America/Argentina/Tucuman";
3934 
3935 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Tucuman = {
3936  kAtcZoneNameAmerica_Argentina_Tucuman /*name*/,
3937  0xe96399eb /*zone_id*/,
3938  &kAtcAllZoneContext /*zone_context*/,
3939  11 /*num_eras*/,
3940  kAtcZoneEraAmerica_Argentina_Tucuman /*eras*/,
3941  NULL /*target_info*/,
3942 };
3943 
3944 //---------------------------------------------------------------------------
3945 // Zone name: America/Argentina/Ushuaia
3946 // Zone Eras: 10
3947 //---------------------------------------------------------------------------
3948 
3949 static const AtcZoneEra kAtcZoneEraAmerica_Argentina_Ushuaia[] = {
3950  // -4:33:12 - LMT 1894 Oct 31
3951  {
3952  NULL /*zone_policy*/,
3953  "LMT" /*format*/,
3954  -1093 /*offset_code (-16392/15)*/,
3955  3 /*offset_remainder (-16392%15)*/,
3956  0 /*delta_minutes*/,
3957  1894 /*until_year*/,
3958  10 /*until_month*/,
3959  31 /*until_day*/,
3960  0 /*until_time_code (0/15)*/,
3961  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3962  },
3963  // -4:16:48 - CMT 1920 May
3964  {
3965  NULL /*zone_policy*/,
3966  "CMT" /*format*/,
3967  -1028 /*offset_code (-15408/15)*/,
3968  12 /*offset_remainder (-15408%15)*/,
3969  0 /*delta_minutes*/,
3970  1920 /*until_year*/,
3971  5 /*until_month*/,
3972  1 /*until_day*/,
3973  0 /*until_time_code (0/15)*/,
3974  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3975  },
3976  // -4:00 - -04 1930 Dec
3977  {
3978  NULL /*zone_policy*/,
3979  "-04" /*format*/,
3980  -960 /*offset_code (-14400/15)*/,
3981  0 /*offset_remainder (-14400%15)*/,
3982  0 /*delta_minutes*/,
3983  1930 /*until_year*/,
3984  12 /*until_month*/,
3985  1 /*until_day*/,
3986  0 /*until_time_code (0/15)*/,
3987  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
3988  },
3989  // -4:00 Arg -04/-03 1969 Oct 5
3990  {
3991  &kAtcAllZonePolicyArg /*zone_policy*/,
3992  "-04/-03" /*format*/,
3993  -960 /*offset_code (-14400/15)*/,
3994  0 /*offset_remainder (-14400%15)*/,
3995  0 /*delta_minutes*/,
3996  1969 /*until_year*/,
3997  10 /*until_month*/,
3998  5 /*until_day*/,
3999  0 /*until_time_code (0/15)*/,
4000  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4001  },
4002  // -3:00 Arg -03/-02 1999 Oct 3
4003  {
4004  &kAtcAllZonePolicyArg /*zone_policy*/,
4005  "-03/-02" /*format*/,
4006  -720 /*offset_code (-10800/15)*/,
4007  0 /*offset_remainder (-10800%15)*/,
4008  0 /*delta_minutes*/,
4009  1999 /*until_year*/,
4010  10 /*until_month*/,
4011  3 /*until_day*/,
4012  0 /*until_time_code (0/15)*/,
4013  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4014  },
4015  // -4:00 Arg -04/-03 2000 Mar 3
4016  {
4017  &kAtcAllZonePolicyArg /*zone_policy*/,
4018  "-04/-03" /*format*/,
4019  -960 /*offset_code (-14400/15)*/,
4020  0 /*offset_remainder (-14400%15)*/,
4021  0 /*delta_minutes*/,
4022  2000 /*until_year*/,
4023  3 /*until_month*/,
4024  3 /*until_day*/,
4025  0 /*until_time_code (0/15)*/,
4026  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4027  },
4028  // -3:00 - -03 2004 May 30
4029  {
4030  NULL /*zone_policy*/,
4031  "-03" /*format*/,
4032  -720 /*offset_code (-10800/15)*/,
4033  0 /*offset_remainder (-10800%15)*/,
4034  0 /*delta_minutes*/,
4035  2004 /*until_year*/,
4036  5 /*until_month*/,
4037  30 /*until_day*/,
4038  0 /*until_time_code (0/15)*/,
4039  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4040  },
4041  // -4:00 - -04 2004 Jun 20
4042  {
4043  NULL /*zone_policy*/,
4044  "-04" /*format*/,
4045  -960 /*offset_code (-14400/15)*/,
4046  0 /*offset_remainder (-14400%15)*/,
4047  0 /*delta_minutes*/,
4048  2004 /*until_year*/,
4049  6 /*until_month*/,
4050  20 /*until_day*/,
4051  0 /*until_time_code (0/15)*/,
4052  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4053  },
4054  // -3:00 Arg -03/-02 2008 Oct 18
4055  {
4056  &kAtcAllZonePolicyArg /*zone_policy*/,
4057  "-03/-02" /*format*/,
4058  -720 /*offset_code (-10800/15)*/,
4059  0 /*offset_remainder (-10800%15)*/,
4060  0 /*delta_minutes*/,
4061  2008 /*until_year*/,
4062  10 /*until_month*/,
4063  18 /*until_day*/,
4064  0 /*until_time_code (0/15)*/,
4065  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4066  },
4067  // -3:00 - -03
4068  {
4069  NULL /*zone_policy*/,
4070  "-03" /*format*/,
4071  -720 /*offset_code (-10800/15)*/,
4072  0 /*offset_remainder (-10800%15)*/,
4073  0 /*delta_minutes*/,
4074  32767 /*until_year*/,
4075  1 /*until_month*/,
4076  1 /*until_day*/,
4077  0 /*until_time_code (0/15)*/,
4078  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4079  },
4080 
4081 };
4082 
4083 static const char kAtcZoneNameAmerica_Argentina_Ushuaia[] = "America/Argentina/Ushuaia";
4084 
4085 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_Ushuaia = {
4086  kAtcZoneNameAmerica_Argentina_Ushuaia /*name*/,
4087  0x320dcdde /*zone_id*/,
4088  &kAtcAllZoneContext /*zone_context*/,
4089  10 /*num_eras*/,
4090  kAtcZoneEraAmerica_Argentina_Ushuaia /*eras*/,
4091  NULL /*target_info*/,
4092 };
4093 
4094 //---------------------------------------------------------------------------
4095 // Zone name: America/Asuncion
4096 // Zone Eras: 5
4097 //---------------------------------------------------------------------------
4098 
4099 static const AtcZoneEra kAtcZoneEraAmerica_Asuncion[] = {
4100  // -3:50:40 - LMT 1890
4101  {
4102  NULL /*zone_policy*/,
4103  "LMT" /*format*/,
4104  -923 /*offset_code (-13840/15)*/,
4105  5 /*offset_remainder (-13840%15)*/,
4106  0 /*delta_minutes*/,
4107  1890 /*until_year*/,
4108  1 /*until_month*/,
4109  1 /*until_day*/,
4110  0 /*until_time_code (0/15)*/,
4111  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4112  },
4113  // -3:50:40 - AMT 1931 Oct 10
4114  {
4115  NULL /*zone_policy*/,
4116  "AMT" /*format*/,
4117  -923 /*offset_code (-13840/15)*/,
4118  5 /*offset_remainder (-13840%15)*/,
4119  0 /*delta_minutes*/,
4120  1931 /*until_year*/,
4121  10 /*until_month*/,
4122  10 /*until_day*/,
4123  0 /*until_time_code (0/15)*/,
4124  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4125  },
4126  // -4:00 - -04 1972 Oct
4127  {
4128  NULL /*zone_policy*/,
4129  "-04" /*format*/,
4130  -960 /*offset_code (-14400/15)*/,
4131  0 /*offset_remainder (-14400%15)*/,
4132  0 /*delta_minutes*/,
4133  1972 /*until_year*/,
4134  10 /*until_month*/,
4135  1 /*until_day*/,
4136  0 /*until_time_code (0/15)*/,
4137  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4138  },
4139  // -3:00 - -03 1974 Apr
4140  {
4141  NULL /*zone_policy*/,
4142  "-03" /*format*/,
4143  -720 /*offset_code (-10800/15)*/,
4144  0 /*offset_remainder (-10800%15)*/,
4145  0 /*delta_minutes*/,
4146  1974 /*until_year*/,
4147  4 /*until_month*/,
4148  1 /*until_day*/,
4149  0 /*until_time_code (0/15)*/,
4150  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4151  },
4152  // -4:00 Para -04/-03
4153  {
4154  &kAtcAllZonePolicyPara /*zone_policy*/,
4155  "-04/-03" /*format*/,
4156  -960 /*offset_code (-14400/15)*/,
4157  0 /*offset_remainder (-14400%15)*/,
4158  0 /*delta_minutes*/,
4159  32767 /*until_year*/,
4160  1 /*until_month*/,
4161  1 /*until_day*/,
4162  0 /*until_time_code (0/15)*/,
4163  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4164  },
4165 
4166 };
4167 
4168 static const char kAtcZoneNameAmerica_Asuncion[] = "America/Asuncion";
4169 
4170 const AtcZoneInfo kAtcAllZoneAmerica_Asuncion = {
4171  kAtcZoneNameAmerica_Asuncion /*name*/,
4172  0x50ec79a6 /*zone_id*/,
4173  &kAtcAllZoneContext /*zone_context*/,
4174  5 /*num_eras*/,
4175  kAtcZoneEraAmerica_Asuncion /*eras*/,
4176  NULL /*target_info*/,
4177 };
4178 
4179 //---------------------------------------------------------------------------
4180 // Zone name: America/Bahia
4181 // Zone Eras: 5
4182 //---------------------------------------------------------------------------
4183 
4184 static const AtcZoneEra kAtcZoneEraAmerica_Bahia[] = {
4185  // -2:34:04 - LMT 1914
4186  {
4187  NULL /*zone_policy*/,
4188  "LMT" /*format*/,
4189  -617 /*offset_code (-9244/15)*/,
4190  11 /*offset_remainder (-9244%15)*/,
4191  0 /*delta_minutes*/,
4192  1914 /*until_year*/,
4193  1 /*until_month*/,
4194  1 /*until_day*/,
4195  0 /*until_time_code (0/15)*/,
4196  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4197  },
4198  // -3:00 Brazil -03/-02 2003 Sep 24
4199  {
4200  &kAtcAllZonePolicyBrazil /*zone_policy*/,
4201  "-03/-02" /*format*/,
4202  -720 /*offset_code (-10800/15)*/,
4203  0 /*offset_remainder (-10800%15)*/,
4204  0 /*delta_minutes*/,
4205  2003 /*until_year*/,
4206  9 /*until_month*/,
4207  24 /*until_day*/,
4208  0 /*until_time_code (0/15)*/,
4209  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4210  },
4211  // -3:00 - -03 2011 Oct 16
4212  {
4213  NULL /*zone_policy*/,
4214  "-03" /*format*/,
4215  -720 /*offset_code (-10800/15)*/,
4216  0 /*offset_remainder (-10800%15)*/,
4217  0 /*delta_minutes*/,
4218  2011 /*until_year*/,
4219  10 /*until_month*/,
4220  16 /*until_day*/,
4221  0 /*until_time_code (0/15)*/,
4222  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4223  },
4224  // -3:00 Brazil -03/-02 2012 Oct 21
4225  {
4226  &kAtcAllZonePolicyBrazil /*zone_policy*/,
4227  "-03/-02" /*format*/,
4228  -720 /*offset_code (-10800/15)*/,
4229  0 /*offset_remainder (-10800%15)*/,
4230  0 /*delta_minutes*/,
4231  2012 /*until_year*/,
4232  10 /*until_month*/,
4233  21 /*until_day*/,
4234  0 /*until_time_code (0/15)*/,
4235  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4236  },
4237  // -3:00 - -03
4238  {
4239  NULL /*zone_policy*/,
4240  "-03" /*format*/,
4241  -720 /*offset_code (-10800/15)*/,
4242  0 /*offset_remainder (-10800%15)*/,
4243  0 /*delta_minutes*/,
4244  32767 /*until_year*/,
4245  1 /*until_month*/,
4246  1 /*until_day*/,
4247  0 /*until_time_code (0/15)*/,
4248  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4249  },
4250 
4251 };
4252 
4253 static const char kAtcZoneNameAmerica_Bahia[] = "America/Bahia";
4254 
4255 const AtcZoneInfo kAtcAllZoneAmerica_Bahia = {
4256  kAtcZoneNameAmerica_Bahia /*name*/,
4257  0x97d815fb /*zone_id*/,
4258  &kAtcAllZoneContext /*zone_context*/,
4259  5 /*num_eras*/,
4260  kAtcZoneEraAmerica_Bahia /*eras*/,
4261  NULL /*target_info*/,
4262 };
4263 
4264 //---------------------------------------------------------------------------
4265 // Zone name: America/Bahia_Banderas
4266 // Zone Eras: 9
4267 //---------------------------------------------------------------------------
4268 
4269 static const AtcZoneEra kAtcZoneEraAmerica_Bahia_Banderas[] = {
4270  // -7:01:00 - LMT 1922 Jan 1 7:00u
4271  {
4272  NULL /*zone_policy*/,
4273  "LMT" /*format*/,
4274  -1684 /*offset_code (-25260/15)*/,
4275  0 /*offset_remainder (-25260%15)*/,
4276  0 /*delta_minutes*/,
4277  1922 /*until_year*/,
4278  1 /*until_month*/,
4279  1 /*until_day*/,
4280  1680 /*until_time_code (25200/15)*/,
4281  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
4282  },
4283  // -7:00 - MST 1927 Jun 10 23:00
4284  {
4285  NULL /*zone_policy*/,
4286  "MST" /*format*/,
4287  -1680 /*offset_code (-25200/15)*/,
4288  0 /*offset_remainder (-25200%15)*/,
4289  0 /*delta_minutes*/,
4290  1927 /*until_year*/,
4291  6 /*until_month*/,
4292  10 /*until_day*/,
4293  5520 /*until_time_code (82800/15)*/,
4294  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4295  },
4296  // -6:00 - CST 1930 Nov 15
4297  {
4298  NULL /*zone_policy*/,
4299  "CST" /*format*/,
4300  -1440 /*offset_code (-21600/15)*/,
4301  0 /*offset_remainder (-21600%15)*/,
4302  0 /*delta_minutes*/,
4303  1930 /*until_year*/,
4304  11 /*until_month*/,
4305  15 /*until_day*/,
4306  0 /*until_time_code (0/15)*/,
4307  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4308  },
4309  // -7:00 Mexico M%sT 1932 Apr 1
4310  {
4311  &kAtcAllZonePolicyMexico /*zone_policy*/,
4312  "M%T" /*format*/,
4313  -1680 /*offset_code (-25200/15)*/,
4314  0 /*offset_remainder (-25200%15)*/,
4315  0 /*delta_minutes*/,
4316  1932 /*until_year*/,
4317  4 /*until_month*/,
4318  1 /*until_day*/,
4319  0 /*until_time_code (0/15)*/,
4320  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4321  },
4322  // -6:00 - CST 1942 Apr 24
4323  {
4324  NULL /*zone_policy*/,
4325  "CST" /*format*/,
4326  -1440 /*offset_code (-21600/15)*/,
4327  0 /*offset_remainder (-21600%15)*/,
4328  0 /*delta_minutes*/,
4329  1942 /*until_year*/,
4330  4 /*until_month*/,
4331  24 /*until_day*/,
4332  0 /*until_time_code (0/15)*/,
4333  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4334  },
4335  // -7:00 - MST 1949 Jan 14
4336  {
4337  NULL /*zone_policy*/,
4338  "MST" /*format*/,
4339  -1680 /*offset_code (-25200/15)*/,
4340  0 /*offset_remainder (-25200%15)*/,
4341  0 /*delta_minutes*/,
4342  1949 /*until_year*/,
4343  1 /*until_month*/,
4344  14 /*until_day*/,
4345  0 /*until_time_code (0/15)*/,
4346  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4347  },
4348  // -8:00 - PST 1970
4349  {
4350  NULL /*zone_policy*/,
4351  "PST" /*format*/,
4352  -1920 /*offset_code (-28800/15)*/,
4353  0 /*offset_remainder (-28800%15)*/,
4354  0 /*delta_minutes*/,
4355  1970 /*until_year*/,
4356  1 /*until_month*/,
4357  1 /*until_day*/,
4358  0 /*until_time_code (0/15)*/,
4359  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4360  },
4361  // -7:00 Mexico M%sT 2010 Apr 4 2:00
4362  {
4363  &kAtcAllZonePolicyMexico /*zone_policy*/,
4364  "M%T" /*format*/,
4365  -1680 /*offset_code (-25200/15)*/,
4366  0 /*offset_remainder (-25200%15)*/,
4367  0 /*delta_minutes*/,
4368  2010 /*until_year*/,
4369  4 /*until_month*/,
4370  4 /*until_day*/,
4371  480 /*until_time_code (7200/15)*/,
4372  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4373  },
4374  // -6:00 Mexico C%sT
4375  {
4376  &kAtcAllZonePolicyMexico /*zone_policy*/,
4377  "C%T" /*format*/,
4378  -1440 /*offset_code (-21600/15)*/,
4379  0 /*offset_remainder (-21600%15)*/,
4380  0 /*delta_minutes*/,
4381  32767 /*until_year*/,
4382  1 /*until_month*/,
4383  1 /*until_day*/,
4384  0 /*until_time_code (0/15)*/,
4385  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4386  },
4387 
4388 };
4389 
4390 static const char kAtcZoneNameAmerica_Bahia_Banderas[] = "America/Bahia_Banderas";
4391 
4392 const AtcZoneInfo kAtcAllZoneAmerica_Bahia_Banderas = {
4393  kAtcZoneNameAmerica_Bahia_Banderas /*name*/,
4394  0x14f6329a /*zone_id*/,
4395  &kAtcAllZoneContext /*zone_context*/,
4396  9 /*num_eras*/,
4397  kAtcZoneEraAmerica_Bahia_Banderas /*eras*/,
4398  NULL /*target_info*/,
4399 };
4400 
4401 //---------------------------------------------------------------------------
4402 // Zone name: America/Barbados
4403 // Zone Eras: 4
4404 //---------------------------------------------------------------------------
4405 
4406 static const AtcZoneEra kAtcZoneEraAmerica_Barbados[] = {
4407  // -3:58:29 - LMT 1911 Aug 28
4408  {
4409  NULL /*zone_policy*/,
4410  "LMT" /*format*/,
4411  -954 /*offset_code (-14309/15)*/,
4412  1 /*offset_remainder (-14309%15)*/,
4413  0 /*delta_minutes*/,
4414  1911 /*until_year*/,
4415  8 /*until_month*/,
4416  28 /*until_day*/,
4417  0 /*until_time_code (0/15)*/,
4418  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4419  },
4420  // -4:00 Barb A%sT 1944
4421  {
4422  &kAtcAllZonePolicyBarb /*zone_policy*/,
4423  "A%T" /*format*/,
4424  -960 /*offset_code (-14400/15)*/,
4425  0 /*offset_remainder (-14400%15)*/,
4426  0 /*delta_minutes*/,
4427  1944 /*until_year*/,
4428  1 /*until_month*/,
4429  1 /*until_day*/,
4430  0 /*until_time_code (0/15)*/,
4431  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4432  },
4433  // -4:00 Barb AST/-0330 1945
4434  {
4435  &kAtcAllZonePolicyBarb /*zone_policy*/,
4436  "AST/-0330" /*format*/,
4437  -960 /*offset_code (-14400/15)*/,
4438  0 /*offset_remainder (-14400%15)*/,
4439  0 /*delta_minutes*/,
4440  1945 /*until_year*/,
4441  1 /*until_month*/,
4442  1 /*until_day*/,
4443  0 /*until_time_code (0/15)*/,
4444  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4445  },
4446  // -4:00 Barb A%sT
4447  {
4448  &kAtcAllZonePolicyBarb /*zone_policy*/,
4449  "A%T" /*format*/,
4450  -960 /*offset_code (-14400/15)*/,
4451  0 /*offset_remainder (-14400%15)*/,
4452  0 /*delta_minutes*/,
4453  32767 /*until_year*/,
4454  1 /*until_month*/,
4455  1 /*until_day*/,
4456  0 /*until_time_code (0/15)*/,
4457  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4458  },
4459 
4460 };
4461 
4462 static const char kAtcZoneNameAmerica_Barbados[] = "America/Barbados";
4463 
4464 const AtcZoneInfo kAtcAllZoneAmerica_Barbados = {
4465  kAtcZoneNameAmerica_Barbados /*name*/,
4466  0xcbbc3b04 /*zone_id*/,
4467  &kAtcAllZoneContext /*zone_context*/,
4468  4 /*num_eras*/,
4469  kAtcZoneEraAmerica_Barbados /*eras*/,
4470  NULL /*target_info*/,
4471 };
4472 
4473 //---------------------------------------------------------------------------
4474 // Zone name: America/Belem
4475 // Zone Eras: 3
4476 //---------------------------------------------------------------------------
4477 
4478 static const AtcZoneEra kAtcZoneEraAmerica_Belem[] = {
4479  // -3:13:56 - LMT 1914
4480  {
4481  NULL /*zone_policy*/,
4482  "LMT" /*format*/,
4483  -776 /*offset_code (-11636/15)*/,
4484  4 /*offset_remainder (-11636%15)*/,
4485  0 /*delta_minutes*/,
4486  1914 /*until_year*/,
4487  1 /*until_month*/,
4488  1 /*until_day*/,
4489  0 /*until_time_code (0/15)*/,
4490  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4491  },
4492  // -3:00 Brazil -03/-02 1988 Sep 12
4493  {
4494  &kAtcAllZonePolicyBrazil /*zone_policy*/,
4495  "-03/-02" /*format*/,
4496  -720 /*offset_code (-10800/15)*/,
4497  0 /*offset_remainder (-10800%15)*/,
4498  0 /*delta_minutes*/,
4499  1988 /*until_year*/,
4500  9 /*until_month*/,
4501  12 /*until_day*/,
4502  0 /*until_time_code (0/15)*/,
4503  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4504  },
4505  // -3:00 - -03
4506  {
4507  NULL /*zone_policy*/,
4508  "-03" /*format*/,
4509  -720 /*offset_code (-10800/15)*/,
4510  0 /*offset_remainder (-10800%15)*/,
4511  0 /*delta_minutes*/,
4512  32767 /*until_year*/,
4513  1 /*until_month*/,
4514  1 /*until_day*/,
4515  0 /*until_time_code (0/15)*/,
4516  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4517  },
4518 
4519 };
4520 
4521 static const char kAtcZoneNameAmerica_Belem[] = "America/Belem";
4522 
4523 const AtcZoneInfo kAtcAllZoneAmerica_Belem = {
4524  kAtcZoneNameAmerica_Belem /*name*/,
4525  0x97da580b /*zone_id*/,
4526  &kAtcAllZoneContext /*zone_context*/,
4527  3 /*num_eras*/,
4528  kAtcZoneEraAmerica_Belem /*eras*/,
4529  NULL /*target_info*/,
4530 };
4531 
4532 //---------------------------------------------------------------------------
4533 // Zone name: America/Belize
4534 // Zone Eras: 2
4535 //---------------------------------------------------------------------------
4536 
4537 static const AtcZoneEra kAtcZoneEraAmerica_Belize[] = {
4538  // -5:52:48 - LMT 1912 Apr 1
4539  {
4540  NULL /*zone_policy*/,
4541  "LMT" /*format*/,
4542  -1412 /*offset_code (-21168/15)*/,
4543  12 /*offset_remainder (-21168%15)*/,
4544  0 /*delta_minutes*/,
4545  1912 /*until_year*/,
4546  4 /*until_month*/,
4547  1 /*until_day*/,
4548  0 /*until_time_code (0/15)*/,
4549  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4550  },
4551  // -6:00 Belize %s
4552  {
4553  &kAtcAllZonePolicyBelize /*zone_policy*/,
4554  "%" /*format*/,
4555  -1440 /*offset_code (-21600/15)*/,
4556  0 /*offset_remainder (-21600%15)*/,
4557  0 /*delta_minutes*/,
4558  32767 /*until_year*/,
4559  1 /*until_month*/,
4560  1 /*until_day*/,
4561  0 /*until_time_code (0/15)*/,
4562  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4563  },
4564 
4565 };
4566 
4567 static const char kAtcZoneNameAmerica_Belize[] = "America/Belize";
4568 
4569 const AtcZoneInfo kAtcAllZoneAmerica_Belize = {
4570  kAtcZoneNameAmerica_Belize /*name*/,
4571  0x93256c81 /*zone_id*/,
4572  &kAtcAllZoneContext /*zone_context*/,
4573  2 /*num_eras*/,
4574  kAtcZoneEraAmerica_Belize /*eras*/,
4575  NULL /*target_info*/,
4576 };
4577 
4578 //---------------------------------------------------------------------------
4579 // Zone name: America/Boa_Vista
4580 // Zone Eras: 5
4581 //---------------------------------------------------------------------------
4582 
4583 static const AtcZoneEra kAtcZoneEraAmerica_Boa_Vista[] = {
4584  // -4:02:40 - LMT 1914
4585  {
4586  NULL /*zone_policy*/,
4587  "LMT" /*format*/,
4588  -971 /*offset_code (-14560/15)*/,
4589  5 /*offset_remainder (-14560%15)*/,
4590  0 /*delta_minutes*/,
4591  1914 /*until_year*/,
4592  1 /*until_month*/,
4593  1 /*until_day*/,
4594  0 /*until_time_code (0/15)*/,
4595  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4596  },
4597  // -4:00 Brazil -04/-03 1988 Sep 12
4598  {
4599  &kAtcAllZonePolicyBrazil /*zone_policy*/,
4600  "-04/-03" /*format*/,
4601  -960 /*offset_code (-14400/15)*/,
4602  0 /*offset_remainder (-14400%15)*/,
4603  0 /*delta_minutes*/,
4604  1988 /*until_year*/,
4605  9 /*until_month*/,
4606  12 /*until_day*/,
4607  0 /*until_time_code (0/15)*/,
4608  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4609  },
4610  // -4:00 - -04 1999 Sep 30
4611  {
4612  NULL /*zone_policy*/,
4613  "-04" /*format*/,
4614  -960 /*offset_code (-14400/15)*/,
4615  0 /*offset_remainder (-14400%15)*/,
4616  0 /*delta_minutes*/,
4617  1999 /*until_year*/,
4618  9 /*until_month*/,
4619  30 /*until_day*/,
4620  0 /*until_time_code (0/15)*/,
4621  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4622  },
4623  // -4:00 Brazil -04/-03 2000 Oct 15
4624  {
4625  &kAtcAllZonePolicyBrazil /*zone_policy*/,
4626  "-04/-03" /*format*/,
4627  -960 /*offset_code (-14400/15)*/,
4628  0 /*offset_remainder (-14400%15)*/,
4629  0 /*delta_minutes*/,
4630  2000 /*until_year*/,
4631  10 /*until_month*/,
4632  15 /*until_day*/,
4633  0 /*until_time_code (0/15)*/,
4634  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4635  },
4636  // -4:00 - -04
4637  {
4638  NULL /*zone_policy*/,
4639  "-04" /*format*/,
4640  -960 /*offset_code (-14400/15)*/,
4641  0 /*offset_remainder (-14400%15)*/,
4642  0 /*delta_minutes*/,
4643  32767 /*until_year*/,
4644  1 /*until_month*/,
4645  1 /*until_day*/,
4646  0 /*until_time_code (0/15)*/,
4647  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4648  },
4649 
4650 };
4651 
4652 static const char kAtcZoneNameAmerica_Boa_Vista[] = "America/Boa_Vista";
4653 
4654 const AtcZoneInfo kAtcAllZoneAmerica_Boa_Vista = {
4655  kAtcZoneNameAmerica_Boa_Vista /*name*/,
4656  0x0a7b7efe /*zone_id*/,
4657  &kAtcAllZoneContext /*zone_context*/,
4658  5 /*num_eras*/,
4659  kAtcZoneEraAmerica_Boa_Vista /*eras*/,
4660  NULL /*target_info*/,
4661 };
4662 
4663 //---------------------------------------------------------------------------
4664 // Zone name: America/Bogota
4665 // Zone Eras: 3
4666 //---------------------------------------------------------------------------
4667 
4668 static const AtcZoneEra kAtcZoneEraAmerica_Bogota[] = {
4669  // -4:56:16 - LMT 1884 Mar 13
4670  {
4671  NULL /*zone_policy*/,
4672  "LMT" /*format*/,
4673  -1186 /*offset_code (-17776/15)*/,
4674  14 /*offset_remainder (-17776%15)*/,
4675  0 /*delta_minutes*/,
4676  1884 /*until_year*/,
4677  3 /*until_month*/,
4678  13 /*until_day*/,
4679  0 /*until_time_code (0/15)*/,
4680  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4681  },
4682  // -4:56:16 - BMT 1914 Nov 23
4683  {
4684  NULL /*zone_policy*/,
4685  "BMT" /*format*/,
4686  -1186 /*offset_code (-17776/15)*/,
4687  14 /*offset_remainder (-17776%15)*/,
4688  0 /*delta_minutes*/,
4689  1914 /*until_year*/,
4690  11 /*until_month*/,
4691  23 /*until_day*/,
4692  0 /*until_time_code (0/15)*/,
4693  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4694  },
4695  // -5:00 CO -05/-04
4696  {
4697  &kAtcAllZonePolicyCO /*zone_policy*/,
4698  "-05/-04" /*format*/,
4699  -1200 /*offset_code (-18000/15)*/,
4700  0 /*offset_remainder (-18000%15)*/,
4701  0 /*delta_minutes*/,
4702  32767 /*until_year*/,
4703  1 /*until_month*/,
4704  1 /*until_day*/,
4705  0 /*until_time_code (0/15)*/,
4706  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4707  },
4708 
4709 };
4710 
4711 static const char kAtcZoneNameAmerica_Bogota[] = "America/Bogota";
4712 
4713 const AtcZoneInfo kAtcAllZoneAmerica_Bogota = {
4714  kAtcZoneNameAmerica_Bogota /*name*/,
4715  0x93d7bc62 /*zone_id*/,
4716  &kAtcAllZoneContext /*zone_context*/,
4717  3 /*num_eras*/,
4718  kAtcZoneEraAmerica_Bogota /*eras*/,
4719  NULL /*target_info*/,
4720 };
4721 
4722 //---------------------------------------------------------------------------
4723 // Zone name: America/Boise
4724 // Zone Eras: 5
4725 //---------------------------------------------------------------------------
4726 
4727 static const AtcZoneEra kAtcZoneEraAmerica_Boise[] = {
4728  // -7:44:49 - LMT 1883 Nov 18 20:00u
4729  {
4730  NULL /*zone_policy*/,
4731  "LMT" /*format*/,
4732  -1860 /*offset_code (-27889/15)*/,
4733  11 /*offset_remainder (-27889%15)*/,
4734  0 /*delta_minutes*/,
4735  1883 /*until_year*/,
4736  11 /*until_month*/,
4737  18 /*until_day*/,
4738  4800 /*until_time_code (72000/15)*/,
4739  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
4740  },
4741  // -8:00 US P%sT 1923 May 13 2:00
4742  {
4743  &kAtcAllZonePolicyUS /*zone_policy*/,
4744  "P%T" /*format*/,
4745  -1920 /*offset_code (-28800/15)*/,
4746  0 /*offset_remainder (-28800%15)*/,
4747  0 /*delta_minutes*/,
4748  1923 /*until_year*/,
4749  5 /*until_month*/,
4750  13 /*until_day*/,
4751  480 /*until_time_code (7200/15)*/,
4752  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4753  },
4754  // -7:00 US M%sT 1974
4755  {
4756  &kAtcAllZonePolicyUS /*zone_policy*/,
4757  "M%T" /*format*/,
4758  -1680 /*offset_code (-25200/15)*/,
4759  0 /*offset_remainder (-25200%15)*/,
4760  0 /*delta_minutes*/,
4761  1974 /*until_year*/,
4762  1 /*until_month*/,
4763  1 /*until_day*/,
4764  0 /*until_time_code (0/15)*/,
4765  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4766  },
4767  // -7:00 - MST 1974 Feb 3 2:00
4768  {
4769  NULL /*zone_policy*/,
4770  "MST" /*format*/,
4771  -1680 /*offset_code (-25200/15)*/,
4772  0 /*offset_remainder (-25200%15)*/,
4773  0 /*delta_minutes*/,
4774  1974 /*until_year*/,
4775  2 /*until_month*/,
4776  3 /*until_day*/,
4777  480 /*until_time_code (7200/15)*/,
4778  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4779  },
4780  // -7:00 US M%sT
4781  {
4782  &kAtcAllZonePolicyUS /*zone_policy*/,
4783  "M%T" /*format*/,
4784  -1680 /*offset_code (-25200/15)*/,
4785  0 /*offset_remainder (-25200%15)*/,
4786  0 /*delta_minutes*/,
4787  32767 /*until_year*/,
4788  1 /*until_month*/,
4789  1 /*until_day*/,
4790  0 /*until_time_code (0/15)*/,
4791  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4792  },
4793 
4794 };
4795 
4796 static const char kAtcZoneNameAmerica_Boise[] = "America/Boise";
4797 
4798 const AtcZoneInfo kAtcAllZoneAmerica_Boise = {
4799  kAtcZoneNameAmerica_Boise /*name*/,
4800  0x97dfc8d8 /*zone_id*/,
4801  &kAtcAllZoneContext /*zone_context*/,
4802  5 /*num_eras*/,
4803  kAtcZoneEraAmerica_Boise /*eras*/,
4804  NULL /*target_info*/,
4805 };
4806 
4807 //---------------------------------------------------------------------------
4808 // Zone name: America/Cambridge_Bay
4809 // Zone Eras: 6
4810 //---------------------------------------------------------------------------
4811 
4812 static const AtcZoneEra kAtcZoneEraAmerica_Cambridge_Bay[] = {
4813  // 0 - -00 1920
4814  {
4815  NULL /*zone_policy*/,
4816  "-00" /*format*/,
4817  0 /*offset_code (0/15)*/,
4818  0 /*offset_remainder (0%15)*/,
4819  0 /*delta_minutes*/,
4820  1920 /*until_year*/,
4821  1 /*until_month*/,
4822  1 /*until_day*/,
4823  0 /*until_time_code (0/15)*/,
4824  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4825  },
4826  // -7:00 NT_YK M%sT 1999 Oct 31 2:00
4827  {
4828  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
4829  "M%T" /*format*/,
4830  -1680 /*offset_code (-25200/15)*/,
4831  0 /*offset_remainder (-25200%15)*/,
4832  0 /*delta_minutes*/,
4833  1999 /*until_year*/,
4834  10 /*until_month*/,
4835  31 /*until_day*/,
4836  480 /*until_time_code (7200/15)*/,
4837  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4838  },
4839  // -6:00 Canada C%sT 2000 Oct 29 2:00
4840  {
4841  &kAtcAllZonePolicyCanada /*zone_policy*/,
4842  "C%T" /*format*/,
4843  -1440 /*offset_code (-21600/15)*/,
4844  0 /*offset_remainder (-21600%15)*/,
4845  0 /*delta_minutes*/,
4846  2000 /*until_year*/,
4847  10 /*until_month*/,
4848  29 /*until_day*/,
4849  480 /*until_time_code (7200/15)*/,
4850  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4851  },
4852  // -5:00 - EST 2000 Nov 5 0:00
4853  {
4854  NULL /*zone_policy*/,
4855  "EST" /*format*/,
4856  -1200 /*offset_code (-18000/15)*/,
4857  0 /*offset_remainder (-18000%15)*/,
4858  0 /*delta_minutes*/,
4859  2000 /*until_year*/,
4860  11 /*until_month*/,
4861  5 /*until_day*/,
4862  0 /*until_time_code (0/15)*/,
4863  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4864  },
4865  // -6:00 - CST 2001 Apr 1 3:00
4866  {
4867  NULL /*zone_policy*/,
4868  "CST" /*format*/,
4869  -1440 /*offset_code (-21600/15)*/,
4870  0 /*offset_remainder (-21600%15)*/,
4871  0 /*delta_minutes*/,
4872  2001 /*until_year*/,
4873  4 /*until_month*/,
4874  1 /*until_day*/,
4875  720 /*until_time_code (10800/15)*/,
4876  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4877  },
4878  // -7:00 Canada M%sT
4879  {
4880  &kAtcAllZonePolicyCanada /*zone_policy*/,
4881  "M%T" /*format*/,
4882  -1680 /*offset_code (-25200/15)*/,
4883  0 /*offset_remainder (-25200%15)*/,
4884  0 /*delta_minutes*/,
4885  32767 /*until_year*/,
4886  1 /*until_month*/,
4887  1 /*until_day*/,
4888  0 /*until_time_code (0/15)*/,
4889  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4890  },
4891 
4892 };
4893 
4894 static const char kAtcZoneNameAmerica_Cambridge_Bay[] = "America/Cambridge_Bay";
4895 
4896 const AtcZoneInfo kAtcAllZoneAmerica_Cambridge_Bay = {
4897  kAtcZoneNameAmerica_Cambridge_Bay /*name*/,
4898  0xd5a44aff /*zone_id*/,
4899  &kAtcAllZoneContext /*zone_context*/,
4900  6 /*num_eras*/,
4901  kAtcZoneEraAmerica_Cambridge_Bay /*eras*/,
4902  NULL /*target_info*/,
4903 };
4904 
4905 //---------------------------------------------------------------------------
4906 // Zone name: America/Campo_Grande
4907 // Zone Eras: 2
4908 //---------------------------------------------------------------------------
4909 
4910 static const AtcZoneEra kAtcZoneEraAmerica_Campo_Grande[] = {
4911  // -3:38:28 - LMT 1914
4912  {
4913  NULL /*zone_policy*/,
4914  "LMT" /*format*/,
4915  -874 /*offset_code (-13108/15)*/,
4916  2 /*offset_remainder (-13108%15)*/,
4917  0 /*delta_minutes*/,
4918  1914 /*until_year*/,
4919  1 /*until_month*/,
4920  1 /*until_day*/,
4921  0 /*until_time_code (0/15)*/,
4922  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4923  },
4924  // -4:00 Brazil -04/-03
4925  {
4926  &kAtcAllZonePolicyBrazil /*zone_policy*/,
4927  "-04/-03" /*format*/,
4928  -960 /*offset_code (-14400/15)*/,
4929  0 /*offset_remainder (-14400%15)*/,
4930  0 /*delta_minutes*/,
4931  32767 /*until_year*/,
4932  1 /*until_month*/,
4933  1 /*until_day*/,
4934  0 /*until_time_code (0/15)*/,
4935  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4936  },
4937 
4938 };
4939 
4940 static const char kAtcZoneNameAmerica_Campo_Grande[] = "America/Campo_Grande";
4941 
4942 const AtcZoneInfo kAtcAllZoneAmerica_Campo_Grande = {
4943  kAtcZoneNameAmerica_Campo_Grande /*name*/,
4944  0xfec3e7a6 /*zone_id*/,
4945  &kAtcAllZoneContext /*zone_context*/,
4946  2 /*num_eras*/,
4947  kAtcZoneEraAmerica_Campo_Grande /*eras*/,
4948  NULL /*target_info*/,
4949 };
4950 
4951 //---------------------------------------------------------------------------
4952 // Zone name: America/Cancun
4953 // Zone Eras: 5
4954 //---------------------------------------------------------------------------
4955 
4956 static const AtcZoneEra kAtcZoneEraAmerica_Cancun[] = {
4957  // -5:47:04 - LMT 1922 Jan 1 6:00u
4958  {
4959  NULL /*zone_policy*/,
4960  "LMT" /*format*/,
4961  -1389 /*offset_code (-20824/15)*/,
4962  11 /*offset_remainder (-20824%15)*/,
4963  0 /*delta_minutes*/,
4964  1922 /*until_year*/,
4965  1 /*until_month*/,
4966  1 /*until_day*/,
4967  1440 /*until_time_code (21600/15)*/,
4968  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
4969  },
4970  // -6:00 - CST 1981 Dec 23
4971  {
4972  NULL /*zone_policy*/,
4973  "CST" /*format*/,
4974  -1440 /*offset_code (-21600/15)*/,
4975  0 /*offset_remainder (-21600%15)*/,
4976  0 /*delta_minutes*/,
4977  1981 /*until_year*/,
4978  12 /*until_month*/,
4979  23 /*until_day*/,
4980  0 /*until_time_code (0/15)*/,
4981  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4982  },
4983  // -5:00 Mexico E%sT 1998 Aug 2 2:00
4984  {
4985  &kAtcAllZonePolicyMexico /*zone_policy*/,
4986  "E%T" /*format*/,
4987  -1200 /*offset_code (-18000/15)*/,
4988  0 /*offset_remainder (-18000%15)*/,
4989  0 /*delta_minutes*/,
4990  1998 /*until_year*/,
4991  8 /*until_month*/,
4992  2 /*until_day*/,
4993  480 /*until_time_code (7200/15)*/,
4994  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
4995  },
4996  // -6:00 Mexico C%sT 2015 Feb 1 2:00
4997  {
4998  &kAtcAllZonePolicyMexico /*zone_policy*/,
4999  "C%T" /*format*/,
5000  -1440 /*offset_code (-21600/15)*/,
5001  0 /*offset_remainder (-21600%15)*/,
5002  0 /*delta_minutes*/,
5003  2015 /*until_year*/,
5004  2 /*until_month*/,
5005  1 /*until_day*/,
5006  480 /*until_time_code (7200/15)*/,
5007  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5008  },
5009  // -5:00 - EST
5010  {
5011  NULL /*zone_policy*/,
5012  "EST" /*format*/,
5013  -1200 /*offset_code (-18000/15)*/,
5014  0 /*offset_remainder (-18000%15)*/,
5015  0 /*delta_minutes*/,
5016  32767 /*until_year*/,
5017  1 /*until_month*/,
5018  1 /*until_day*/,
5019  0 /*until_time_code (0/15)*/,
5020  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5021  },
5022 
5023 };
5024 
5025 static const char kAtcZoneNameAmerica_Cancun[] = "America/Cancun";
5026 
5027 const AtcZoneInfo kAtcAllZoneAmerica_Cancun = {
5028  kAtcZoneNameAmerica_Cancun /*name*/,
5029  0x953331be /*zone_id*/,
5030  &kAtcAllZoneContext /*zone_context*/,
5031  5 /*num_eras*/,
5032  kAtcZoneEraAmerica_Cancun /*eras*/,
5033  NULL /*target_info*/,
5034 };
5035 
5036 //---------------------------------------------------------------------------
5037 // Zone name: America/Caracas
5038 // Zone Eras: 6
5039 //---------------------------------------------------------------------------
5040 
5041 static const AtcZoneEra kAtcZoneEraAmerica_Caracas[] = {
5042  // -4:27:44 - LMT 1890
5043  {
5044  NULL /*zone_policy*/,
5045  "LMT" /*format*/,
5046  -1071 /*offset_code (-16064/15)*/,
5047  1 /*offset_remainder (-16064%15)*/,
5048  0 /*delta_minutes*/,
5049  1890 /*until_year*/,
5050  1 /*until_month*/,
5051  1 /*until_day*/,
5052  0 /*until_time_code (0/15)*/,
5053  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5054  },
5055  // -4:27:40 - CMT 1912 Feb 12
5056  {
5057  NULL /*zone_policy*/,
5058  "CMT" /*format*/,
5059  -1071 /*offset_code (-16060/15)*/,
5060  5 /*offset_remainder (-16060%15)*/,
5061  0 /*delta_minutes*/,
5062  1912 /*until_year*/,
5063  2 /*until_month*/,
5064  12 /*until_day*/,
5065  0 /*until_time_code (0/15)*/,
5066  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5067  },
5068  // -4:30 - -0430 1965 Jan 1 0:00
5069  {
5070  NULL /*zone_policy*/,
5071  "-0430" /*format*/,
5072  -1080 /*offset_code (-16200/15)*/,
5073  0 /*offset_remainder (-16200%15)*/,
5074  0 /*delta_minutes*/,
5075  1965 /*until_year*/,
5076  1 /*until_month*/,
5077  1 /*until_day*/,
5078  0 /*until_time_code (0/15)*/,
5079  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5080  },
5081  // -4:00 - -04 2007 Dec 9 3:00
5082  {
5083  NULL /*zone_policy*/,
5084  "-04" /*format*/,
5085  -960 /*offset_code (-14400/15)*/,
5086  0 /*offset_remainder (-14400%15)*/,
5087  0 /*delta_minutes*/,
5088  2007 /*until_year*/,
5089  12 /*until_month*/,
5090  9 /*until_day*/,
5091  720 /*until_time_code (10800/15)*/,
5092  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5093  },
5094  // -4:30 - -0430 2016 May 1 2:30
5095  {
5096  NULL /*zone_policy*/,
5097  "-0430" /*format*/,
5098  -1080 /*offset_code (-16200/15)*/,
5099  0 /*offset_remainder (-16200%15)*/,
5100  0 /*delta_minutes*/,
5101  2016 /*until_year*/,
5102  5 /*until_month*/,
5103  1 /*until_day*/,
5104  600 /*until_time_code (9000/15)*/,
5105  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5106  },
5107  // -4:00 - -04
5108  {
5109  NULL /*zone_policy*/,
5110  "-04" /*format*/,
5111  -960 /*offset_code (-14400/15)*/,
5112  0 /*offset_remainder (-14400%15)*/,
5113  0 /*delta_minutes*/,
5114  32767 /*until_year*/,
5115  1 /*until_month*/,
5116  1 /*until_day*/,
5117  0 /*until_time_code (0/15)*/,
5118  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5119  },
5120 
5121 };
5122 
5123 static const char kAtcZoneNameAmerica_Caracas[] = "America/Caracas";
5124 
5125 const AtcZoneInfo kAtcAllZoneAmerica_Caracas = {
5126  kAtcZoneNameAmerica_Caracas /*name*/,
5127  0x3be064f4 /*zone_id*/,
5128  &kAtcAllZoneContext /*zone_context*/,
5129  6 /*num_eras*/,
5130  kAtcZoneEraAmerica_Caracas /*eras*/,
5131  NULL /*target_info*/,
5132 };
5133 
5134 //---------------------------------------------------------------------------
5135 // Zone name: America/Cayenne
5136 // Zone Eras: 3
5137 //---------------------------------------------------------------------------
5138 
5139 static const AtcZoneEra kAtcZoneEraAmerica_Cayenne[] = {
5140  // -3:29:20 - LMT 1911 Jul
5141  {
5142  NULL /*zone_policy*/,
5143  "LMT" /*format*/,
5144  -838 /*offset_code (-12560/15)*/,
5145  10 /*offset_remainder (-12560%15)*/,
5146  0 /*delta_minutes*/,
5147  1911 /*until_year*/,
5148  7 /*until_month*/,
5149  1 /*until_day*/,
5150  0 /*until_time_code (0/15)*/,
5151  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5152  },
5153  // -4:00 - -04 1967 Oct
5154  {
5155  NULL /*zone_policy*/,
5156  "-04" /*format*/,
5157  -960 /*offset_code (-14400/15)*/,
5158  0 /*offset_remainder (-14400%15)*/,
5159  0 /*delta_minutes*/,
5160  1967 /*until_year*/,
5161  10 /*until_month*/,
5162  1 /*until_day*/,
5163  0 /*until_time_code (0/15)*/,
5164  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5165  },
5166  // -3:00 - -03
5167  {
5168  NULL /*zone_policy*/,
5169  "-03" /*format*/,
5170  -720 /*offset_code (-10800/15)*/,
5171  0 /*offset_remainder (-10800%15)*/,
5172  0 /*delta_minutes*/,
5173  32767 /*until_year*/,
5174  1 /*until_month*/,
5175  1 /*until_day*/,
5176  0 /*until_time_code (0/15)*/,
5177  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5178  },
5179 
5180 };
5181 
5182 static const char kAtcZoneNameAmerica_Cayenne[] = "America/Cayenne";
5183 
5184 const AtcZoneInfo kAtcAllZoneAmerica_Cayenne = {
5185  kAtcZoneNameAmerica_Cayenne /*name*/,
5186  0x3c617269 /*zone_id*/,
5187  &kAtcAllZoneContext /*zone_context*/,
5188  3 /*num_eras*/,
5189  kAtcZoneEraAmerica_Cayenne /*eras*/,
5190  NULL /*target_info*/,
5191 };
5192 
5193 //---------------------------------------------------------------------------
5194 // Zone name: America/Chicago
5195 // Zone Eras: 8
5196 //---------------------------------------------------------------------------
5197 
5198 static const AtcZoneEra kAtcZoneEraAmerica_Chicago[] = {
5199  // -5:50:36 - LMT 1883 Nov 18 18:00u
5200  {
5201  NULL /*zone_policy*/,
5202  "LMT" /*format*/,
5203  -1403 /*offset_code (-21036/15)*/,
5204  9 /*offset_remainder (-21036%15)*/,
5205  0 /*delta_minutes*/,
5206  1883 /*until_year*/,
5207  11 /*until_month*/,
5208  18 /*until_day*/,
5209  4320 /*until_time_code (64800/15)*/,
5210  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
5211  },
5212  // -6:00 US C%sT 1920
5213  {
5214  &kAtcAllZonePolicyUS /*zone_policy*/,
5215  "C%T" /*format*/,
5216  -1440 /*offset_code (-21600/15)*/,
5217  0 /*offset_remainder (-21600%15)*/,
5218  0 /*delta_minutes*/,
5219  1920 /*until_year*/,
5220  1 /*until_month*/,
5221  1 /*until_day*/,
5222  0 /*until_time_code (0/15)*/,
5223  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5224  },
5225  // -6:00 Chicago C%sT 1936 Mar 1 2:00
5226  {
5227  &kAtcAllZonePolicyChicago /*zone_policy*/,
5228  "C%T" /*format*/,
5229  -1440 /*offset_code (-21600/15)*/,
5230  0 /*offset_remainder (-21600%15)*/,
5231  0 /*delta_minutes*/,
5232  1936 /*until_year*/,
5233  3 /*until_month*/,
5234  1 /*until_day*/,
5235  480 /*until_time_code (7200/15)*/,
5236  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5237  },
5238  // -5:00 - EST 1936 Nov 15 2:00
5239  {
5240  NULL /*zone_policy*/,
5241  "EST" /*format*/,
5242  -1200 /*offset_code (-18000/15)*/,
5243  0 /*offset_remainder (-18000%15)*/,
5244  0 /*delta_minutes*/,
5245  1936 /*until_year*/,
5246  11 /*until_month*/,
5247  15 /*until_day*/,
5248  480 /*until_time_code (7200/15)*/,
5249  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5250  },
5251  // -6:00 Chicago C%sT 1942
5252  {
5253  &kAtcAllZonePolicyChicago /*zone_policy*/,
5254  "C%T" /*format*/,
5255  -1440 /*offset_code (-21600/15)*/,
5256  0 /*offset_remainder (-21600%15)*/,
5257  0 /*delta_minutes*/,
5258  1942 /*until_year*/,
5259  1 /*until_month*/,
5260  1 /*until_day*/,
5261  0 /*until_time_code (0/15)*/,
5262  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5263  },
5264  // -6:00 US C%sT 1946
5265  {
5266  &kAtcAllZonePolicyUS /*zone_policy*/,
5267  "C%T" /*format*/,
5268  -1440 /*offset_code (-21600/15)*/,
5269  0 /*offset_remainder (-21600%15)*/,
5270  0 /*delta_minutes*/,
5271  1946 /*until_year*/,
5272  1 /*until_month*/,
5273  1 /*until_day*/,
5274  0 /*until_time_code (0/15)*/,
5275  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5276  },
5277  // -6:00 Chicago C%sT 1967
5278  {
5279  &kAtcAllZonePolicyChicago /*zone_policy*/,
5280  "C%T" /*format*/,
5281  -1440 /*offset_code (-21600/15)*/,
5282  0 /*offset_remainder (-21600%15)*/,
5283  0 /*delta_minutes*/,
5284  1967 /*until_year*/,
5285  1 /*until_month*/,
5286  1 /*until_day*/,
5287  0 /*until_time_code (0/15)*/,
5288  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5289  },
5290  // -6:00 US C%sT
5291  {
5292  &kAtcAllZonePolicyUS /*zone_policy*/,
5293  "C%T" /*format*/,
5294  -1440 /*offset_code (-21600/15)*/,
5295  0 /*offset_remainder (-21600%15)*/,
5296  0 /*delta_minutes*/,
5297  32767 /*until_year*/,
5298  1 /*until_month*/,
5299  1 /*until_day*/,
5300  0 /*until_time_code (0/15)*/,
5301  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5302  },
5303 
5304 };
5305 
5306 static const char kAtcZoneNameAmerica_Chicago[] = "America/Chicago";
5307 
5308 const AtcZoneInfo kAtcAllZoneAmerica_Chicago = {
5309  kAtcZoneNameAmerica_Chicago /*name*/,
5310  0x4b92b5d4 /*zone_id*/,
5311  &kAtcAllZoneContext /*zone_context*/,
5312  8 /*num_eras*/,
5313  kAtcZoneEraAmerica_Chicago /*eras*/,
5314  NULL /*target_info*/,
5315 };
5316 
5317 //---------------------------------------------------------------------------
5318 // Zone name: America/Chihuahua
5319 // Zone Eras: 9
5320 //---------------------------------------------------------------------------
5321 
5322 static const AtcZoneEra kAtcZoneEraAmerica_Chihuahua[] = {
5323  // -7:04:20 - LMT 1922 Jan 1 7:00u
5324  {
5325  NULL /*zone_policy*/,
5326  "LMT" /*format*/,
5327  -1698 /*offset_code (-25460/15)*/,
5328  10 /*offset_remainder (-25460%15)*/,
5329  0 /*delta_minutes*/,
5330  1922 /*until_year*/,
5331  1 /*until_month*/,
5332  1 /*until_day*/,
5333  1680 /*until_time_code (25200/15)*/,
5334  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
5335  },
5336  // -7:00 - MST 1927 Jun 10 23:00
5337  {
5338  NULL /*zone_policy*/,
5339  "MST" /*format*/,
5340  -1680 /*offset_code (-25200/15)*/,
5341  0 /*offset_remainder (-25200%15)*/,
5342  0 /*delta_minutes*/,
5343  1927 /*until_year*/,
5344  6 /*until_month*/,
5345  10 /*until_day*/,
5346  5520 /*until_time_code (82800/15)*/,
5347  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5348  },
5349  // -6:00 - CST 1930 Nov 15
5350  {
5351  NULL /*zone_policy*/,
5352  "CST" /*format*/,
5353  -1440 /*offset_code (-21600/15)*/,
5354  0 /*offset_remainder (-21600%15)*/,
5355  0 /*delta_minutes*/,
5356  1930 /*until_year*/,
5357  11 /*until_month*/,
5358  15 /*until_day*/,
5359  0 /*until_time_code (0/15)*/,
5360  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5361  },
5362  // -7:00 Mexico M%sT 1932 Apr 1
5363  {
5364  &kAtcAllZonePolicyMexico /*zone_policy*/,
5365  "M%T" /*format*/,
5366  -1680 /*offset_code (-25200/15)*/,
5367  0 /*offset_remainder (-25200%15)*/,
5368  0 /*delta_minutes*/,
5369  1932 /*until_year*/,
5370  4 /*until_month*/,
5371  1 /*until_day*/,
5372  0 /*until_time_code (0/15)*/,
5373  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5374  },
5375  // -6:00 - CST 1996
5376  {
5377  NULL /*zone_policy*/,
5378  "CST" /*format*/,
5379  -1440 /*offset_code (-21600/15)*/,
5380  0 /*offset_remainder (-21600%15)*/,
5381  0 /*delta_minutes*/,
5382  1996 /*until_year*/,
5383  1 /*until_month*/,
5384  1 /*until_day*/,
5385  0 /*until_time_code (0/15)*/,
5386  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5387  },
5388  // -6:00 Mexico C%sT 1998
5389  {
5390  &kAtcAllZonePolicyMexico /*zone_policy*/,
5391  "C%T" /*format*/,
5392  -1440 /*offset_code (-21600/15)*/,
5393  0 /*offset_remainder (-21600%15)*/,
5394  0 /*delta_minutes*/,
5395  1998 /*until_year*/,
5396  1 /*until_month*/,
5397  1 /*until_day*/,
5398  0 /*until_time_code (0/15)*/,
5399  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5400  },
5401  // -6:00 - CST 1998 Apr Sun>=1 3:00
5402  {
5403  NULL /*zone_policy*/,
5404  "CST" /*format*/,
5405  -1440 /*offset_code (-21600/15)*/,
5406  0 /*offset_remainder (-21600%15)*/,
5407  0 /*delta_minutes*/,
5408  1998 /*until_year*/,
5409  4 /*until_month*/,
5410  5 /*until_day*/,
5411  720 /*until_time_code (10800/15)*/,
5412  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5413  },
5414  // -7:00 Mexico M%sT 2022 Oct 30 2:00
5415  {
5416  &kAtcAllZonePolicyMexico /*zone_policy*/,
5417  "M%T" /*format*/,
5418  -1680 /*offset_code (-25200/15)*/,
5419  0 /*offset_remainder (-25200%15)*/,
5420  0 /*delta_minutes*/,
5421  2022 /*until_year*/,
5422  10 /*until_month*/,
5423  30 /*until_day*/,
5424  480 /*until_time_code (7200/15)*/,
5425  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5426  },
5427  // -6:00 - CST
5428  {
5429  NULL /*zone_policy*/,
5430  "CST" /*format*/,
5431  -1440 /*offset_code (-21600/15)*/,
5432  0 /*offset_remainder (-21600%15)*/,
5433  0 /*delta_minutes*/,
5434  32767 /*until_year*/,
5435  1 /*until_month*/,
5436  1 /*until_day*/,
5437  0 /*until_time_code (0/15)*/,
5438  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5439  },
5440 
5441 };
5442 
5443 static const char kAtcZoneNameAmerica_Chihuahua[] = "America/Chihuahua";
5444 
5445 const AtcZoneInfo kAtcAllZoneAmerica_Chihuahua = {
5446  kAtcZoneNameAmerica_Chihuahua /*name*/,
5447  0x8827d776 /*zone_id*/,
5448  &kAtcAllZoneContext /*zone_context*/,
5449  9 /*num_eras*/,
5450  kAtcZoneEraAmerica_Chihuahua /*eras*/,
5451  NULL /*target_info*/,
5452 };
5453 
5454 //---------------------------------------------------------------------------
5455 // Zone name: America/Ciudad_Juarez
5456 // Zone Eras: 11
5457 //---------------------------------------------------------------------------
5458 
5459 static const AtcZoneEra kAtcZoneEraAmerica_Ciudad_Juarez[] = {
5460  // -7:05:56 - LMT 1922 Jan 1 7:00u
5461  {
5462  NULL /*zone_policy*/,
5463  "LMT" /*format*/,
5464  -1704 /*offset_code (-25556/15)*/,
5465  4 /*offset_remainder (-25556%15)*/,
5466  0 /*delta_minutes*/,
5467  1922 /*until_year*/,
5468  1 /*until_month*/,
5469  1 /*until_day*/,
5470  1680 /*until_time_code (25200/15)*/,
5471  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
5472  },
5473  // -7:00 - MST 1927 Jun 10 23:00
5474  {
5475  NULL /*zone_policy*/,
5476  "MST" /*format*/,
5477  -1680 /*offset_code (-25200/15)*/,
5478  0 /*offset_remainder (-25200%15)*/,
5479  0 /*delta_minutes*/,
5480  1927 /*until_year*/,
5481  6 /*until_month*/,
5482  10 /*until_day*/,
5483  5520 /*until_time_code (82800/15)*/,
5484  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5485  },
5486  // -6:00 - CST 1930 Nov 15
5487  {
5488  NULL /*zone_policy*/,
5489  "CST" /*format*/,
5490  -1440 /*offset_code (-21600/15)*/,
5491  0 /*offset_remainder (-21600%15)*/,
5492  0 /*delta_minutes*/,
5493  1930 /*until_year*/,
5494  11 /*until_month*/,
5495  15 /*until_day*/,
5496  0 /*until_time_code (0/15)*/,
5497  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5498  },
5499  // -7:00 Mexico M%sT 1932 Apr 1
5500  {
5501  &kAtcAllZonePolicyMexico /*zone_policy*/,
5502  "M%T" /*format*/,
5503  -1680 /*offset_code (-25200/15)*/,
5504  0 /*offset_remainder (-25200%15)*/,
5505  0 /*delta_minutes*/,
5506  1932 /*until_year*/,
5507  4 /*until_month*/,
5508  1 /*until_day*/,
5509  0 /*until_time_code (0/15)*/,
5510  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5511  },
5512  // -6:00 - CST 1996
5513  {
5514  NULL /*zone_policy*/,
5515  "CST" /*format*/,
5516  -1440 /*offset_code (-21600/15)*/,
5517  0 /*offset_remainder (-21600%15)*/,
5518  0 /*delta_minutes*/,
5519  1996 /*until_year*/,
5520  1 /*until_month*/,
5521  1 /*until_day*/,
5522  0 /*until_time_code (0/15)*/,
5523  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5524  },
5525  // -6:00 Mexico C%sT 1998
5526  {
5527  &kAtcAllZonePolicyMexico /*zone_policy*/,
5528  "C%T" /*format*/,
5529  -1440 /*offset_code (-21600/15)*/,
5530  0 /*offset_remainder (-21600%15)*/,
5531  0 /*delta_minutes*/,
5532  1998 /*until_year*/,
5533  1 /*until_month*/,
5534  1 /*until_day*/,
5535  0 /*until_time_code (0/15)*/,
5536  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5537  },
5538  // -6:00 - CST 1998 Apr Sun>=1 3:00
5539  {
5540  NULL /*zone_policy*/,
5541  "CST" /*format*/,
5542  -1440 /*offset_code (-21600/15)*/,
5543  0 /*offset_remainder (-21600%15)*/,
5544  0 /*delta_minutes*/,
5545  1998 /*until_year*/,
5546  4 /*until_month*/,
5547  5 /*until_day*/,
5548  720 /*until_time_code (10800/15)*/,
5549  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5550  },
5551  // -7:00 Mexico M%sT 2010
5552  {
5553  &kAtcAllZonePolicyMexico /*zone_policy*/,
5554  "M%T" /*format*/,
5555  -1680 /*offset_code (-25200/15)*/,
5556  0 /*offset_remainder (-25200%15)*/,
5557  0 /*delta_minutes*/,
5558  2010 /*until_year*/,
5559  1 /*until_month*/,
5560  1 /*until_day*/,
5561  0 /*until_time_code (0/15)*/,
5562  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5563  },
5564  // -7:00 US M%sT 2022 Oct 30 2:00
5565  {
5566  &kAtcAllZonePolicyUS /*zone_policy*/,
5567  "M%T" /*format*/,
5568  -1680 /*offset_code (-25200/15)*/,
5569  0 /*offset_remainder (-25200%15)*/,
5570  0 /*delta_minutes*/,
5571  2022 /*until_year*/,
5572  10 /*until_month*/,
5573  30 /*until_day*/,
5574  480 /*until_time_code (7200/15)*/,
5575  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5576  },
5577  // -6:00 - CST 2022 Nov 30 0:00
5578  {
5579  NULL /*zone_policy*/,
5580  "CST" /*format*/,
5581  -1440 /*offset_code (-21600/15)*/,
5582  0 /*offset_remainder (-21600%15)*/,
5583  0 /*delta_minutes*/,
5584  2022 /*until_year*/,
5585  11 /*until_month*/,
5586  30 /*until_day*/,
5587  0 /*until_time_code (0/15)*/,
5588  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5589  },
5590  // -7:00 US M%sT
5591  {
5592  &kAtcAllZonePolicyUS /*zone_policy*/,
5593  "M%T" /*format*/,
5594  -1680 /*offset_code (-25200/15)*/,
5595  0 /*offset_remainder (-25200%15)*/,
5596  0 /*delta_minutes*/,
5597  32767 /*until_year*/,
5598  1 /*until_month*/,
5599  1 /*until_day*/,
5600  0 /*until_time_code (0/15)*/,
5601  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5602  },
5603 
5604 };
5605 
5606 static const char kAtcZoneNameAmerica_Ciudad_Juarez[] = "America/Ciudad_Juarez";
5607 
5608 const AtcZoneInfo kAtcAllZoneAmerica_Ciudad_Juarez = {
5609  kAtcZoneNameAmerica_Ciudad_Juarez /*name*/,
5610  0x7347fc60 /*zone_id*/,
5611  &kAtcAllZoneContext /*zone_context*/,
5612  11 /*num_eras*/,
5613  kAtcZoneEraAmerica_Ciudad_Juarez /*eras*/,
5614  NULL /*target_info*/,
5615 };
5616 
5617 //---------------------------------------------------------------------------
5618 // Zone name: America/Costa_Rica
5619 // Zone Eras: 3
5620 //---------------------------------------------------------------------------
5621 
5622 static const AtcZoneEra kAtcZoneEraAmerica_Costa_Rica[] = {
5623  // -5:36:13 - LMT 1890
5624  {
5625  NULL /*zone_policy*/,
5626  "LMT" /*format*/,
5627  -1345 /*offset_code (-20173/15)*/,
5628  2 /*offset_remainder (-20173%15)*/,
5629  0 /*delta_minutes*/,
5630  1890 /*until_year*/,
5631  1 /*until_month*/,
5632  1 /*until_day*/,
5633  0 /*until_time_code (0/15)*/,
5634  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5635  },
5636  // -5:36:13 - SJMT 1921 Jan 15
5637  {
5638  NULL /*zone_policy*/,
5639  "SJMT" /*format*/,
5640  -1345 /*offset_code (-20173/15)*/,
5641  2 /*offset_remainder (-20173%15)*/,
5642  0 /*delta_minutes*/,
5643  1921 /*until_year*/,
5644  1 /*until_month*/,
5645  15 /*until_day*/,
5646  0 /*until_time_code (0/15)*/,
5647  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5648  },
5649  // -6:00 CR C%sT
5650  {
5651  &kAtcAllZonePolicyCR /*zone_policy*/,
5652  "C%T" /*format*/,
5653  -1440 /*offset_code (-21600/15)*/,
5654  0 /*offset_remainder (-21600%15)*/,
5655  0 /*delta_minutes*/,
5656  32767 /*until_year*/,
5657  1 /*until_month*/,
5658  1 /*until_day*/,
5659  0 /*until_time_code (0/15)*/,
5660  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5661  },
5662 
5663 };
5664 
5665 static const char kAtcZoneNameAmerica_Costa_Rica[] = "America/Costa_Rica";
5666 
5667 const AtcZoneInfo kAtcAllZoneAmerica_Costa_Rica = {
5668  kAtcZoneNameAmerica_Costa_Rica /*name*/,
5669  0x63ff66be /*zone_id*/,
5670  &kAtcAllZoneContext /*zone_context*/,
5671  3 /*num_eras*/,
5672  kAtcZoneEraAmerica_Costa_Rica /*eras*/,
5673  NULL /*target_info*/,
5674 };
5675 
5676 //---------------------------------------------------------------------------
5677 // Zone name: America/Cuiaba
5678 // Zone Eras: 4
5679 //---------------------------------------------------------------------------
5680 
5681 static const AtcZoneEra kAtcZoneEraAmerica_Cuiaba[] = {
5682  // -3:44:20 - LMT 1914
5683  {
5684  NULL /*zone_policy*/,
5685  "LMT" /*format*/,
5686  -898 /*offset_code (-13460/15)*/,
5687  10 /*offset_remainder (-13460%15)*/,
5688  0 /*delta_minutes*/,
5689  1914 /*until_year*/,
5690  1 /*until_month*/,
5691  1 /*until_day*/,
5692  0 /*until_time_code (0/15)*/,
5693  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5694  },
5695  // -4:00 Brazil -04/-03 2003 Sep 24
5696  {
5697  &kAtcAllZonePolicyBrazil /*zone_policy*/,
5698  "-04/-03" /*format*/,
5699  -960 /*offset_code (-14400/15)*/,
5700  0 /*offset_remainder (-14400%15)*/,
5701  0 /*delta_minutes*/,
5702  2003 /*until_year*/,
5703  9 /*until_month*/,
5704  24 /*until_day*/,
5705  0 /*until_time_code (0/15)*/,
5706  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5707  },
5708  // -4:00 - -04 2004 Oct 1
5709  {
5710  NULL /*zone_policy*/,
5711  "-04" /*format*/,
5712  -960 /*offset_code (-14400/15)*/,
5713  0 /*offset_remainder (-14400%15)*/,
5714  0 /*delta_minutes*/,
5715  2004 /*until_year*/,
5716  10 /*until_month*/,
5717  1 /*until_day*/,
5718  0 /*until_time_code (0/15)*/,
5719  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5720  },
5721  // -4:00 Brazil -04/-03
5722  {
5723  &kAtcAllZonePolicyBrazil /*zone_policy*/,
5724  "-04/-03" /*format*/,
5725  -960 /*offset_code (-14400/15)*/,
5726  0 /*offset_remainder (-14400%15)*/,
5727  0 /*delta_minutes*/,
5728  32767 /*until_year*/,
5729  1 /*until_month*/,
5730  1 /*until_day*/,
5731  0 /*until_time_code (0/15)*/,
5732  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5733  },
5734 
5735 };
5736 
5737 static const char kAtcZoneNameAmerica_Cuiaba[] = "America/Cuiaba";
5738 
5739 const AtcZoneInfo kAtcAllZoneAmerica_Cuiaba = {
5740  kAtcZoneNameAmerica_Cuiaba /*name*/,
5741  0x969a52eb /*zone_id*/,
5742  &kAtcAllZoneContext /*zone_context*/,
5743  4 /*num_eras*/,
5744  kAtcZoneEraAmerica_Cuiaba /*eras*/,
5745  NULL /*target_info*/,
5746 };
5747 
5748 //---------------------------------------------------------------------------
5749 // Zone name: America/Danmarkshavn
5750 // Zone Eras: 4
5751 //---------------------------------------------------------------------------
5752 
5753 static const AtcZoneEra kAtcZoneEraAmerica_Danmarkshavn[] = {
5754  // -1:14:40 - LMT 1916 Jul 28
5755  {
5756  NULL /*zone_policy*/,
5757  "LMT" /*format*/,
5758  -299 /*offset_code (-4480/15)*/,
5759  5 /*offset_remainder (-4480%15)*/,
5760  0 /*delta_minutes*/,
5761  1916 /*until_year*/,
5762  7 /*until_month*/,
5763  28 /*until_day*/,
5764  0 /*until_time_code (0/15)*/,
5765  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5766  },
5767  // -3:00 - -03 1980 Apr 6 2:00
5768  {
5769  NULL /*zone_policy*/,
5770  "-03" /*format*/,
5771  -720 /*offset_code (-10800/15)*/,
5772  0 /*offset_remainder (-10800%15)*/,
5773  0 /*delta_minutes*/,
5774  1980 /*until_year*/,
5775  4 /*until_month*/,
5776  6 /*until_day*/,
5777  480 /*until_time_code (7200/15)*/,
5778  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5779  },
5780  // -3:00 EU -03/-02 1996
5781  {
5782  &kAtcAllZonePolicyEU /*zone_policy*/,
5783  "-03/-02" /*format*/,
5784  -720 /*offset_code (-10800/15)*/,
5785  0 /*offset_remainder (-10800%15)*/,
5786  0 /*delta_minutes*/,
5787  1996 /*until_year*/,
5788  1 /*until_month*/,
5789  1 /*until_day*/,
5790  0 /*until_time_code (0/15)*/,
5791  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5792  },
5793  // 0:00 - GMT
5794  {
5795  NULL /*zone_policy*/,
5796  "GMT" /*format*/,
5797  0 /*offset_code (0/15)*/,
5798  0 /*offset_remainder (0%15)*/,
5799  0 /*delta_minutes*/,
5800  32767 /*until_year*/,
5801  1 /*until_month*/,
5802  1 /*until_day*/,
5803  0 /*until_time_code (0/15)*/,
5804  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5805  },
5806 
5807 };
5808 
5809 static const char kAtcZoneNameAmerica_Danmarkshavn[] = "America/Danmarkshavn";
5810 
5811 const AtcZoneInfo kAtcAllZoneAmerica_Danmarkshavn = {
5812  kAtcZoneNameAmerica_Danmarkshavn /*name*/,
5813  0xf554d204 /*zone_id*/,
5814  &kAtcAllZoneContext /*zone_context*/,
5815  4 /*num_eras*/,
5816  kAtcZoneEraAmerica_Danmarkshavn /*eras*/,
5817  NULL /*target_info*/,
5818 };
5819 
5820 //---------------------------------------------------------------------------
5821 // Zone name: America/Dawson
5822 // Zone Eras: 6
5823 //---------------------------------------------------------------------------
5824 
5825 static const AtcZoneEra kAtcZoneEraAmerica_Dawson[] = {
5826  // -9:17:40 - LMT 1900 Aug 20
5827  {
5828  NULL /*zone_policy*/,
5829  "LMT" /*format*/,
5830  -2231 /*offset_code (-33460/15)*/,
5831  5 /*offset_remainder (-33460%15)*/,
5832  0 /*delta_minutes*/,
5833  1900 /*until_year*/,
5834  8 /*until_month*/,
5835  20 /*until_day*/,
5836  0 /*until_time_code (0/15)*/,
5837  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5838  },
5839  // -9:00 NT_YK Y%sT 1965
5840  {
5841  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
5842  "Y%T" /*format*/,
5843  -2160 /*offset_code (-32400/15)*/,
5844  0 /*offset_remainder (-32400%15)*/,
5845  0 /*delta_minutes*/,
5846  1965 /*until_year*/,
5847  1 /*until_month*/,
5848  1 /*until_day*/,
5849  0 /*until_time_code (0/15)*/,
5850  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5851  },
5852  // -9:00 Yukon Y%sT 1973 Oct 28 0:00
5853  {
5854  &kAtcAllZonePolicyYukon /*zone_policy*/,
5855  "Y%T" /*format*/,
5856  -2160 /*offset_code (-32400/15)*/,
5857  0 /*offset_remainder (-32400%15)*/,
5858  0 /*delta_minutes*/,
5859  1973 /*until_year*/,
5860  10 /*until_month*/,
5861  28 /*until_day*/,
5862  0 /*until_time_code (0/15)*/,
5863  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5864  },
5865  // -8:00 - PST 1980
5866  {
5867  NULL /*zone_policy*/,
5868  "PST" /*format*/,
5869  -1920 /*offset_code (-28800/15)*/,
5870  0 /*offset_remainder (-28800%15)*/,
5871  0 /*delta_minutes*/,
5872  1980 /*until_year*/,
5873  1 /*until_month*/,
5874  1 /*until_day*/,
5875  0 /*until_time_code (0/15)*/,
5876  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5877  },
5878  // -8:00 Canada P%sT 2020 Nov 1
5879  {
5880  &kAtcAllZonePolicyCanada /*zone_policy*/,
5881  "P%T" /*format*/,
5882  -1920 /*offset_code (-28800/15)*/,
5883  0 /*offset_remainder (-28800%15)*/,
5884  0 /*delta_minutes*/,
5885  2020 /*until_year*/,
5886  11 /*until_month*/,
5887  1 /*until_day*/,
5888  0 /*until_time_code (0/15)*/,
5889  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5890  },
5891  // -7:00 - MST
5892  {
5893  NULL /*zone_policy*/,
5894  "MST" /*format*/,
5895  -1680 /*offset_code (-25200/15)*/,
5896  0 /*offset_remainder (-25200%15)*/,
5897  0 /*delta_minutes*/,
5898  32767 /*until_year*/,
5899  1 /*until_month*/,
5900  1 /*until_day*/,
5901  0 /*until_time_code (0/15)*/,
5902  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5903  },
5904 
5905 };
5906 
5907 static const char kAtcZoneNameAmerica_Dawson[] = "America/Dawson";
5908 
5909 const AtcZoneInfo kAtcAllZoneAmerica_Dawson = {
5910  kAtcZoneNameAmerica_Dawson /*name*/,
5911  0x978d8d12 /*zone_id*/,
5912  &kAtcAllZoneContext /*zone_context*/,
5913  6 /*num_eras*/,
5914  kAtcZoneEraAmerica_Dawson /*eras*/,
5915  NULL /*target_info*/,
5916 };
5917 
5918 //---------------------------------------------------------------------------
5919 // Zone name: America/Dawson_Creek
5920 // Zone Eras: 4
5921 //---------------------------------------------------------------------------
5922 
5923 static const AtcZoneEra kAtcZoneEraAmerica_Dawson_Creek[] = {
5924  // -8:00:56 - LMT 1884
5925  {
5926  NULL /*zone_policy*/,
5927  "LMT" /*format*/,
5928  -1924 /*offset_code (-28856/15)*/,
5929  4 /*offset_remainder (-28856%15)*/,
5930  0 /*delta_minutes*/,
5931  1884 /*until_year*/,
5932  1 /*until_month*/,
5933  1 /*until_day*/,
5934  0 /*until_time_code (0/15)*/,
5935  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5936  },
5937  // -8:00 Canada P%sT 1947
5938  {
5939  &kAtcAllZonePolicyCanada /*zone_policy*/,
5940  "P%T" /*format*/,
5941  -1920 /*offset_code (-28800/15)*/,
5942  0 /*offset_remainder (-28800%15)*/,
5943  0 /*delta_minutes*/,
5944  1947 /*until_year*/,
5945  1 /*until_month*/,
5946  1 /*until_day*/,
5947  0 /*until_time_code (0/15)*/,
5948  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5949  },
5950  // -8:00 Vanc P%sT 1972 Aug 30 2:00
5951  {
5952  &kAtcAllZonePolicyVanc /*zone_policy*/,
5953  "P%T" /*format*/,
5954  -1920 /*offset_code (-28800/15)*/,
5955  0 /*offset_remainder (-28800%15)*/,
5956  0 /*delta_minutes*/,
5957  1972 /*until_year*/,
5958  8 /*until_month*/,
5959  30 /*until_day*/,
5960  480 /*until_time_code (7200/15)*/,
5961  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5962  },
5963  // -7:00 - MST
5964  {
5965  NULL /*zone_policy*/,
5966  "MST" /*format*/,
5967  -1680 /*offset_code (-25200/15)*/,
5968  0 /*offset_remainder (-25200%15)*/,
5969  0 /*delta_minutes*/,
5970  32767 /*until_year*/,
5971  1 /*until_month*/,
5972  1 /*until_day*/,
5973  0 /*until_time_code (0/15)*/,
5974  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
5975  },
5976 
5977 };
5978 
5979 static const char kAtcZoneNameAmerica_Dawson_Creek[] = "America/Dawson_Creek";
5980 
5981 const AtcZoneInfo kAtcAllZoneAmerica_Dawson_Creek = {
5982  kAtcZoneNameAmerica_Dawson_Creek /*name*/,
5983  0x6cf24e5b /*zone_id*/,
5984  &kAtcAllZoneContext /*zone_context*/,
5985  4 /*num_eras*/,
5986  kAtcZoneEraAmerica_Dawson_Creek /*eras*/,
5987  NULL /*target_info*/,
5988 };
5989 
5990 //---------------------------------------------------------------------------
5991 // Zone name: America/Denver
5992 // Zone Eras: 6
5993 //---------------------------------------------------------------------------
5994 
5995 static const AtcZoneEra kAtcZoneEraAmerica_Denver[] = {
5996  // -6:59:56 - LMT 1883 Nov 18 19:00u
5997  {
5998  NULL /*zone_policy*/,
5999  "LMT" /*format*/,
6000  -1680 /*offset_code (-25196/15)*/,
6001  4 /*offset_remainder (-25196%15)*/,
6002  0 /*delta_minutes*/,
6003  1883 /*until_year*/,
6004  11 /*until_month*/,
6005  18 /*until_day*/,
6006  4560 /*until_time_code (68400/15)*/,
6007  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
6008  },
6009  // -7:00 US M%sT 1920
6010  {
6011  &kAtcAllZonePolicyUS /*zone_policy*/,
6012  "M%T" /*format*/,
6013  -1680 /*offset_code (-25200/15)*/,
6014  0 /*offset_remainder (-25200%15)*/,
6015  0 /*delta_minutes*/,
6016  1920 /*until_year*/,
6017  1 /*until_month*/,
6018  1 /*until_day*/,
6019  0 /*until_time_code (0/15)*/,
6020  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6021  },
6022  // -7:00 Denver M%sT 1942
6023  {
6024  &kAtcAllZonePolicyDenver /*zone_policy*/,
6025  "M%T" /*format*/,
6026  -1680 /*offset_code (-25200/15)*/,
6027  0 /*offset_remainder (-25200%15)*/,
6028  0 /*delta_minutes*/,
6029  1942 /*until_year*/,
6030  1 /*until_month*/,
6031  1 /*until_day*/,
6032  0 /*until_time_code (0/15)*/,
6033  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6034  },
6035  // -7:00 US M%sT 1946
6036  {
6037  &kAtcAllZonePolicyUS /*zone_policy*/,
6038  "M%T" /*format*/,
6039  -1680 /*offset_code (-25200/15)*/,
6040  0 /*offset_remainder (-25200%15)*/,
6041  0 /*delta_minutes*/,
6042  1946 /*until_year*/,
6043  1 /*until_month*/,
6044  1 /*until_day*/,
6045  0 /*until_time_code (0/15)*/,
6046  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6047  },
6048  // -7:00 Denver M%sT 1967
6049  {
6050  &kAtcAllZonePolicyDenver /*zone_policy*/,
6051  "M%T" /*format*/,
6052  -1680 /*offset_code (-25200/15)*/,
6053  0 /*offset_remainder (-25200%15)*/,
6054  0 /*delta_minutes*/,
6055  1967 /*until_year*/,
6056  1 /*until_month*/,
6057  1 /*until_day*/,
6058  0 /*until_time_code (0/15)*/,
6059  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6060  },
6061  // -7:00 US M%sT
6062  {
6063  &kAtcAllZonePolicyUS /*zone_policy*/,
6064  "M%T" /*format*/,
6065  -1680 /*offset_code (-25200/15)*/,
6066  0 /*offset_remainder (-25200%15)*/,
6067  0 /*delta_minutes*/,
6068  32767 /*until_year*/,
6069  1 /*until_month*/,
6070  1 /*until_day*/,
6071  0 /*until_time_code (0/15)*/,
6072  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6073  },
6074 
6075 };
6076 
6077 static const char kAtcZoneNameAmerica_Denver[] = "America/Denver";
6078 
6079 const AtcZoneInfo kAtcAllZoneAmerica_Denver = {
6080  kAtcZoneNameAmerica_Denver /*name*/,
6081  0x97d10b2a /*zone_id*/,
6082  &kAtcAllZoneContext /*zone_context*/,
6083  6 /*num_eras*/,
6084  kAtcZoneEraAmerica_Denver /*eras*/,
6085  NULL /*target_info*/,
6086 };
6087 
6088 //---------------------------------------------------------------------------
6089 // Zone name: America/Detroit
6090 // Zone Eras: 10
6091 //---------------------------------------------------------------------------
6092 
6093 static const AtcZoneEra kAtcZoneEraAmerica_Detroit[] = {
6094  // -5:32:11 - LMT 1905
6095  {
6096  NULL /*zone_policy*/,
6097  "LMT" /*format*/,
6098  -1329 /*offset_code (-19931/15)*/,
6099  4 /*offset_remainder (-19931%15)*/,
6100  0 /*delta_minutes*/,
6101  1905 /*until_year*/,
6102  1 /*until_month*/,
6103  1 /*until_day*/,
6104  0 /*until_time_code (0/15)*/,
6105  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6106  },
6107  // -6:00 - CST 1915 May 15 2:00
6108  {
6109  NULL /*zone_policy*/,
6110  "CST" /*format*/,
6111  -1440 /*offset_code (-21600/15)*/,
6112  0 /*offset_remainder (-21600%15)*/,
6113  0 /*delta_minutes*/,
6114  1915 /*until_year*/,
6115  5 /*until_month*/,
6116  15 /*until_day*/,
6117  480 /*until_time_code (7200/15)*/,
6118  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6119  },
6120  // -5:00 - EST 1942
6121  {
6122  NULL /*zone_policy*/,
6123  "EST" /*format*/,
6124  -1200 /*offset_code (-18000/15)*/,
6125  0 /*offset_remainder (-18000%15)*/,
6126  0 /*delta_minutes*/,
6127  1942 /*until_year*/,
6128  1 /*until_month*/,
6129  1 /*until_day*/,
6130  0 /*until_time_code (0/15)*/,
6131  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6132  },
6133  // -5:00 US E%sT 1946
6134  {
6135  &kAtcAllZonePolicyUS /*zone_policy*/,
6136  "E%T" /*format*/,
6137  -1200 /*offset_code (-18000/15)*/,
6138  0 /*offset_remainder (-18000%15)*/,
6139  0 /*delta_minutes*/,
6140  1946 /*until_year*/,
6141  1 /*until_month*/,
6142  1 /*until_day*/,
6143  0 /*until_time_code (0/15)*/,
6144  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6145  },
6146  // -5:00 Detroit E%sT 1967 Jun 14 0:01
6147  {
6148  &kAtcAllZonePolicyDetroit /*zone_policy*/,
6149  "E%T" /*format*/,
6150  -1200 /*offset_code (-18000/15)*/,
6151  0 /*offset_remainder (-18000%15)*/,
6152  0 /*delta_minutes*/,
6153  1967 /*until_year*/,
6154  6 /*until_month*/,
6155  14 /*until_day*/,
6156  4 /*until_time_code (60/15)*/,
6157  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6158  },
6159  // -5:00 US E%sT 1969
6160  {
6161  &kAtcAllZonePolicyUS /*zone_policy*/,
6162  "E%T" /*format*/,
6163  -1200 /*offset_code (-18000/15)*/,
6164  0 /*offset_remainder (-18000%15)*/,
6165  0 /*delta_minutes*/,
6166  1969 /*until_year*/,
6167  1 /*until_month*/,
6168  1 /*until_day*/,
6169  0 /*until_time_code (0/15)*/,
6170  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6171  },
6172  // -5:00 - EST 1973
6173  {
6174  NULL /*zone_policy*/,
6175  "EST" /*format*/,
6176  -1200 /*offset_code (-18000/15)*/,
6177  0 /*offset_remainder (-18000%15)*/,
6178  0 /*delta_minutes*/,
6179  1973 /*until_year*/,
6180  1 /*until_month*/,
6181  1 /*until_day*/,
6182  0 /*until_time_code (0/15)*/,
6183  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6184  },
6185  // -5:00 US E%sT 1975
6186  {
6187  &kAtcAllZonePolicyUS /*zone_policy*/,
6188  "E%T" /*format*/,
6189  -1200 /*offset_code (-18000/15)*/,
6190  0 /*offset_remainder (-18000%15)*/,
6191  0 /*delta_minutes*/,
6192  1975 /*until_year*/,
6193  1 /*until_month*/,
6194  1 /*until_day*/,
6195  0 /*until_time_code (0/15)*/,
6196  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6197  },
6198  // -5:00 - EST 1975 Apr 27 2:00
6199  {
6200  NULL /*zone_policy*/,
6201  "EST" /*format*/,
6202  -1200 /*offset_code (-18000/15)*/,
6203  0 /*offset_remainder (-18000%15)*/,
6204  0 /*delta_minutes*/,
6205  1975 /*until_year*/,
6206  4 /*until_month*/,
6207  27 /*until_day*/,
6208  480 /*until_time_code (7200/15)*/,
6209  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6210  },
6211  // -5:00 US E%sT
6212  {
6213  &kAtcAllZonePolicyUS /*zone_policy*/,
6214  "E%T" /*format*/,
6215  -1200 /*offset_code (-18000/15)*/,
6216  0 /*offset_remainder (-18000%15)*/,
6217  0 /*delta_minutes*/,
6218  32767 /*until_year*/,
6219  1 /*until_month*/,
6220  1 /*until_day*/,
6221  0 /*until_time_code (0/15)*/,
6222  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6223  },
6224 
6225 };
6226 
6227 static const char kAtcZoneNameAmerica_Detroit[] = "America/Detroit";
6228 
6229 const AtcZoneInfo kAtcAllZoneAmerica_Detroit = {
6230  kAtcZoneNameAmerica_Detroit /*name*/,
6231  0x925cfbc1 /*zone_id*/,
6232  &kAtcAllZoneContext /*zone_context*/,
6233  10 /*num_eras*/,
6234  kAtcZoneEraAmerica_Detroit /*eras*/,
6235  NULL /*target_info*/,
6236 };
6237 
6238 //---------------------------------------------------------------------------
6239 // Zone name: America/Edmonton
6240 // Zone Eras: 3
6241 //---------------------------------------------------------------------------
6242 
6243 static const AtcZoneEra kAtcZoneEraAmerica_Edmonton[] = {
6244  // -7:33:52 - LMT 1906 Sep
6245  {
6246  NULL /*zone_policy*/,
6247  "LMT" /*format*/,
6248  -1816 /*offset_code (-27232/15)*/,
6249  8 /*offset_remainder (-27232%15)*/,
6250  0 /*delta_minutes*/,
6251  1906 /*until_year*/,
6252  9 /*until_month*/,
6253  1 /*until_day*/,
6254  0 /*until_time_code (0/15)*/,
6255  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6256  },
6257  // -7:00 Edm M%sT 1987
6258  {
6259  &kAtcAllZonePolicyEdm /*zone_policy*/,
6260  "M%T" /*format*/,
6261  -1680 /*offset_code (-25200/15)*/,
6262  0 /*offset_remainder (-25200%15)*/,
6263  0 /*delta_minutes*/,
6264  1987 /*until_year*/,
6265  1 /*until_month*/,
6266  1 /*until_day*/,
6267  0 /*until_time_code (0/15)*/,
6268  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6269  },
6270  // -7:00 Canada M%sT
6271  {
6272  &kAtcAllZonePolicyCanada /*zone_policy*/,
6273  "M%T" /*format*/,
6274  -1680 /*offset_code (-25200/15)*/,
6275  0 /*offset_remainder (-25200%15)*/,
6276  0 /*delta_minutes*/,
6277  32767 /*until_year*/,
6278  1 /*until_month*/,
6279  1 /*until_day*/,
6280  0 /*until_time_code (0/15)*/,
6281  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6282  },
6283 
6284 };
6285 
6286 static const char kAtcZoneNameAmerica_Edmonton[] = "America/Edmonton";
6287 
6288 const AtcZoneInfo kAtcAllZoneAmerica_Edmonton = {
6289  kAtcZoneNameAmerica_Edmonton /*name*/,
6290  0x6cb9484a /*zone_id*/,
6291  &kAtcAllZoneContext /*zone_context*/,
6292  3 /*num_eras*/,
6293  kAtcZoneEraAmerica_Edmonton /*eras*/,
6294  NULL /*target_info*/,
6295 };
6296 
6297 //---------------------------------------------------------------------------
6298 // Zone name: America/Eirunepe
6299 // Zone Eras: 7
6300 //---------------------------------------------------------------------------
6301 
6302 static const AtcZoneEra kAtcZoneEraAmerica_Eirunepe[] = {
6303  // -4:39:28 - LMT 1914
6304  {
6305  NULL /*zone_policy*/,
6306  "LMT" /*format*/,
6307  -1118 /*offset_code (-16768/15)*/,
6308  2 /*offset_remainder (-16768%15)*/,
6309  0 /*delta_minutes*/,
6310  1914 /*until_year*/,
6311  1 /*until_month*/,
6312  1 /*until_day*/,
6313  0 /*until_time_code (0/15)*/,
6314  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6315  },
6316  // -5:00 Brazil -05/-04 1988 Sep 12
6317  {
6318  &kAtcAllZonePolicyBrazil /*zone_policy*/,
6319  "-05/-04" /*format*/,
6320  -1200 /*offset_code (-18000/15)*/,
6321  0 /*offset_remainder (-18000%15)*/,
6322  0 /*delta_minutes*/,
6323  1988 /*until_year*/,
6324  9 /*until_month*/,
6325  12 /*until_day*/,
6326  0 /*until_time_code (0/15)*/,
6327  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6328  },
6329  // -5:00 - -05 1993 Sep 28
6330  {
6331  NULL /*zone_policy*/,
6332  "-05" /*format*/,
6333  -1200 /*offset_code (-18000/15)*/,
6334  0 /*offset_remainder (-18000%15)*/,
6335  0 /*delta_minutes*/,
6336  1993 /*until_year*/,
6337  9 /*until_month*/,
6338  28 /*until_day*/,
6339  0 /*until_time_code (0/15)*/,
6340  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6341  },
6342  // -5:00 Brazil -05/-04 1994 Sep 22
6343  {
6344  &kAtcAllZonePolicyBrazil /*zone_policy*/,
6345  "-05/-04" /*format*/,
6346  -1200 /*offset_code (-18000/15)*/,
6347  0 /*offset_remainder (-18000%15)*/,
6348  0 /*delta_minutes*/,
6349  1994 /*until_year*/,
6350  9 /*until_month*/,
6351  22 /*until_day*/,
6352  0 /*until_time_code (0/15)*/,
6353  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6354  },
6355  // -5:00 - -05 2008 Jun 24 0:00
6356  {
6357  NULL /*zone_policy*/,
6358  "-05" /*format*/,
6359  -1200 /*offset_code (-18000/15)*/,
6360  0 /*offset_remainder (-18000%15)*/,
6361  0 /*delta_minutes*/,
6362  2008 /*until_year*/,
6363  6 /*until_month*/,
6364  24 /*until_day*/,
6365  0 /*until_time_code (0/15)*/,
6366  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6367  },
6368  // -4:00 - -04 2013 Nov 10
6369  {
6370  NULL /*zone_policy*/,
6371  "-04" /*format*/,
6372  -960 /*offset_code (-14400/15)*/,
6373  0 /*offset_remainder (-14400%15)*/,
6374  0 /*delta_minutes*/,
6375  2013 /*until_year*/,
6376  11 /*until_month*/,
6377  10 /*until_day*/,
6378  0 /*until_time_code (0/15)*/,
6379  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6380  },
6381  // -5:00 - -05
6382  {
6383  NULL /*zone_policy*/,
6384  "-05" /*format*/,
6385  -1200 /*offset_code (-18000/15)*/,
6386  0 /*offset_remainder (-18000%15)*/,
6387  0 /*delta_minutes*/,
6388  32767 /*until_year*/,
6389  1 /*until_month*/,
6390  1 /*until_day*/,
6391  0 /*until_time_code (0/15)*/,
6392  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6393  },
6394 
6395 };
6396 
6397 static const char kAtcZoneNameAmerica_Eirunepe[] = "America/Eirunepe";
6398 
6399 const AtcZoneInfo kAtcAllZoneAmerica_Eirunepe = {
6400  kAtcZoneNameAmerica_Eirunepe /*name*/,
6401  0xf9b29683 /*zone_id*/,
6402  &kAtcAllZoneContext /*zone_context*/,
6403  7 /*num_eras*/,
6404  kAtcZoneEraAmerica_Eirunepe /*eras*/,
6405  NULL /*target_info*/,
6406 };
6407 
6408 //---------------------------------------------------------------------------
6409 // Zone name: America/El_Salvador
6410 // Zone Eras: 2
6411 //---------------------------------------------------------------------------
6412 
6413 static const AtcZoneEra kAtcZoneEraAmerica_El_Salvador[] = {
6414  // -5:56:48 - LMT 1921
6415  {
6416  NULL /*zone_policy*/,
6417  "LMT" /*format*/,
6418  -1428 /*offset_code (-21408/15)*/,
6419  12 /*offset_remainder (-21408%15)*/,
6420  0 /*delta_minutes*/,
6421  1921 /*until_year*/,
6422  1 /*until_month*/,
6423  1 /*until_day*/,
6424  0 /*until_time_code (0/15)*/,
6425  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6426  },
6427  // -6:00 Salv C%sT
6428  {
6429  &kAtcAllZonePolicySalv /*zone_policy*/,
6430  "C%T" /*format*/,
6431  -1440 /*offset_code (-21600/15)*/,
6432  0 /*offset_remainder (-21600%15)*/,
6433  0 /*delta_minutes*/,
6434  32767 /*until_year*/,
6435  1 /*until_month*/,
6436  1 /*until_day*/,
6437  0 /*until_time_code (0/15)*/,
6438  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6439  },
6440 
6441 };
6442 
6443 static const char kAtcZoneNameAmerica_El_Salvador[] = "America/El_Salvador";
6444 
6445 const AtcZoneInfo kAtcAllZoneAmerica_El_Salvador = {
6446  kAtcZoneNameAmerica_El_Salvador /*name*/,
6447  0x752ad652 /*zone_id*/,
6448  &kAtcAllZoneContext /*zone_context*/,
6449  2 /*num_eras*/,
6450  kAtcZoneEraAmerica_El_Salvador /*eras*/,
6451  NULL /*target_info*/,
6452 };
6453 
6454 //---------------------------------------------------------------------------
6455 // Zone name: America/Fort_Nelson
6456 // Zone Eras: 6
6457 //---------------------------------------------------------------------------
6458 
6459 static const AtcZoneEra kAtcZoneEraAmerica_Fort_Nelson[] = {
6460  // -8:10:47 - LMT 1884
6461  {
6462  NULL /*zone_policy*/,
6463  "LMT" /*format*/,
6464  -1964 /*offset_code (-29447/15)*/,
6465  13 /*offset_remainder (-29447%15)*/,
6466  0 /*delta_minutes*/,
6467  1884 /*until_year*/,
6468  1 /*until_month*/,
6469  1 /*until_day*/,
6470  0 /*until_time_code (0/15)*/,
6471  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6472  },
6473  // -8:00 Vanc P%sT 1946
6474  {
6475  &kAtcAllZonePolicyVanc /*zone_policy*/,
6476  "P%T" /*format*/,
6477  -1920 /*offset_code (-28800/15)*/,
6478  0 /*offset_remainder (-28800%15)*/,
6479  0 /*delta_minutes*/,
6480  1946 /*until_year*/,
6481  1 /*until_month*/,
6482  1 /*until_day*/,
6483  0 /*until_time_code (0/15)*/,
6484  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6485  },
6486  // -8:00 - PST 1947
6487  {
6488  NULL /*zone_policy*/,
6489  "PST" /*format*/,
6490  -1920 /*offset_code (-28800/15)*/,
6491  0 /*offset_remainder (-28800%15)*/,
6492  0 /*delta_minutes*/,
6493  1947 /*until_year*/,
6494  1 /*until_month*/,
6495  1 /*until_day*/,
6496  0 /*until_time_code (0/15)*/,
6497  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6498  },
6499  // -8:00 Vanc P%sT 1987
6500  {
6501  &kAtcAllZonePolicyVanc /*zone_policy*/,
6502  "P%T" /*format*/,
6503  -1920 /*offset_code (-28800/15)*/,
6504  0 /*offset_remainder (-28800%15)*/,
6505  0 /*delta_minutes*/,
6506  1987 /*until_year*/,
6507  1 /*until_month*/,
6508  1 /*until_day*/,
6509  0 /*until_time_code (0/15)*/,
6510  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6511  },
6512  // -8:00 Canada P%sT 2015 Mar 8 2:00
6513  {
6514  &kAtcAllZonePolicyCanada /*zone_policy*/,
6515  "P%T" /*format*/,
6516  -1920 /*offset_code (-28800/15)*/,
6517  0 /*offset_remainder (-28800%15)*/,
6518  0 /*delta_minutes*/,
6519  2015 /*until_year*/,
6520  3 /*until_month*/,
6521  8 /*until_day*/,
6522  480 /*until_time_code (7200/15)*/,
6523  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6524  },
6525  // -7:00 - MST
6526  {
6527  NULL /*zone_policy*/,
6528  "MST" /*format*/,
6529  -1680 /*offset_code (-25200/15)*/,
6530  0 /*offset_remainder (-25200%15)*/,
6531  0 /*delta_minutes*/,
6532  32767 /*until_year*/,
6533  1 /*until_month*/,
6534  1 /*until_day*/,
6535  0 /*until_time_code (0/15)*/,
6536  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6537  },
6538 
6539 };
6540 
6541 static const char kAtcZoneNameAmerica_Fort_Nelson[] = "America/Fort_Nelson";
6542 
6543 const AtcZoneInfo kAtcAllZoneAmerica_Fort_Nelson = {
6544  kAtcZoneNameAmerica_Fort_Nelson /*name*/,
6545  0x3f437e0f /*zone_id*/,
6546  &kAtcAllZoneContext /*zone_context*/,
6547  6 /*num_eras*/,
6548  kAtcZoneEraAmerica_Fort_Nelson /*eras*/,
6549  NULL /*target_info*/,
6550 };
6551 
6552 //---------------------------------------------------------------------------
6553 // Zone name: America/Fortaleza
6554 // Zone Eras: 7
6555 //---------------------------------------------------------------------------
6556 
6557 static const AtcZoneEra kAtcZoneEraAmerica_Fortaleza[] = {
6558  // -2:34:00 - LMT 1914
6559  {
6560  NULL /*zone_policy*/,
6561  "LMT" /*format*/,
6562  -616 /*offset_code (-9240/15)*/,
6563  0 /*offset_remainder (-9240%15)*/,
6564  0 /*delta_minutes*/,
6565  1914 /*until_year*/,
6566  1 /*until_month*/,
6567  1 /*until_day*/,
6568  0 /*until_time_code (0/15)*/,
6569  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6570  },
6571  // -3:00 Brazil -03/-02 1990 Sep 17
6572  {
6573  &kAtcAllZonePolicyBrazil /*zone_policy*/,
6574  "-03/-02" /*format*/,
6575  -720 /*offset_code (-10800/15)*/,
6576  0 /*offset_remainder (-10800%15)*/,
6577  0 /*delta_minutes*/,
6578  1990 /*until_year*/,
6579  9 /*until_month*/,
6580  17 /*until_day*/,
6581  0 /*until_time_code (0/15)*/,
6582  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6583  },
6584  // -3:00 - -03 1999 Sep 30
6585  {
6586  NULL /*zone_policy*/,
6587  "-03" /*format*/,
6588  -720 /*offset_code (-10800/15)*/,
6589  0 /*offset_remainder (-10800%15)*/,
6590  0 /*delta_minutes*/,
6591  1999 /*until_year*/,
6592  9 /*until_month*/,
6593  30 /*until_day*/,
6594  0 /*until_time_code (0/15)*/,
6595  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6596  },
6597  // -3:00 Brazil -03/-02 2000 Oct 22
6598  {
6599  &kAtcAllZonePolicyBrazil /*zone_policy*/,
6600  "-03/-02" /*format*/,
6601  -720 /*offset_code (-10800/15)*/,
6602  0 /*offset_remainder (-10800%15)*/,
6603  0 /*delta_minutes*/,
6604  2000 /*until_year*/,
6605  10 /*until_month*/,
6606  22 /*until_day*/,
6607  0 /*until_time_code (0/15)*/,
6608  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6609  },
6610  // -3:00 - -03 2001 Sep 13
6611  {
6612  NULL /*zone_policy*/,
6613  "-03" /*format*/,
6614  -720 /*offset_code (-10800/15)*/,
6615  0 /*offset_remainder (-10800%15)*/,
6616  0 /*delta_minutes*/,
6617  2001 /*until_year*/,
6618  9 /*until_month*/,
6619  13 /*until_day*/,
6620  0 /*until_time_code (0/15)*/,
6621  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6622  },
6623  // -3:00 Brazil -03/-02 2002 Oct 1
6624  {
6625  &kAtcAllZonePolicyBrazil /*zone_policy*/,
6626  "-03/-02" /*format*/,
6627  -720 /*offset_code (-10800/15)*/,
6628  0 /*offset_remainder (-10800%15)*/,
6629  0 /*delta_minutes*/,
6630  2002 /*until_year*/,
6631  10 /*until_month*/,
6632  1 /*until_day*/,
6633  0 /*until_time_code (0/15)*/,
6634  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6635  },
6636  // -3:00 - -03
6637  {
6638  NULL /*zone_policy*/,
6639  "-03" /*format*/,
6640  -720 /*offset_code (-10800/15)*/,
6641  0 /*offset_remainder (-10800%15)*/,
6642  0 /*delta_minutes*/,
6643  32767 /*until_year*/,
6644  1 /*until_month*/,
6645  1 /*until_day*/,
6646  0 /*until_time_code (0/15)*/,
6647  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6648  },
6649 
6650 };
6651 
6652 static const char kAtcZoneNameAmerica_Fortaleza[] = "America/Fortaleza";
6653 
6654 const AtcZoneInfo kAtcAllZoneAmerica_Fortaleza = {
6655  kAtcZoneNameAmerica_Fortaleza /*name*/,
6656  0x2ad018ee /*zone_id*/,
6657  &kAtcAllZoneContext /*zone_context*/,
6658  7 /*num_eras*/,
6659  kAtcZoneEraAmerica_Fortaleza /*eras*/,
6660  NULL /*target_info*/,
6661 };
6662 
6663 //---------------------------------------------------------------------------
6664 // Zone name: America/Glace_Bay
6665 // Zone Eras: 6
6666 //---------------------------------------------------------------------------
6667 
6668 static const AtcZoneEra kAtcZoneEraAmerica_Glace_Bay[] = {
6669  // -3:59:48 - LMT 1902 Jun 15
6670  {
6671  NULL /*zone_policy*/,
6672  "LMT" /*format*/,
6673  -960 /*offset_code (-14388/15)*/,
6674  12 /*offset_remainder (-14388%15)*/,
6675  0 /*delta_minutes*/,
6676  1902 /*until_year*/,
6677  6 /*until_month*/,
6678  15 /*until_day*/,
6679  0 /*until_time_code (0/15)*/,
6680  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6681  },
6682  // -4:00 Canada A%sT 1953
6683  {
6684  &kAtcAllZonePolicyCanada /*zone_policy*/,
6685  "A%T" /*format*/,
6686  -960 /*offset_code (-14400/15)*/,
6687  0 /*offset_remainder (-14400%15)*/,
6688  0 /*delta_minutes*/,
6689  1953 /*until_year*/,
6690  1 /*until_month*/,
6691  1 /*until_day*/,
6692  0 /*until_time_code (0/15)*/,
6693  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6694  },
6695  // -4:00 Halifax A%sT 1954
6696  {
6697  &kAtcAllZonePolicyHalifax /*zone_policy*/,
6698  "A%T" /*format*/,
6699  -960 /*offset_code (-14400/15)*/,
6700  0 /*offset_remainder (-14400%15)*/,
6701  0 /*delta_minutes*/,
6702  1954 /*until_year*/,
6703  1 /*until_month*/,
6704  1 /*until_day*/,
6705  0 /*until_time_code (0/15)*/,
6706  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6707  },
6708  // -4:00 - AST 1972
6709  {
6710  NULL /*zone_policy*/,
6711  "AST" /*format*/,
6712  -960 /*offset_code (-14400/15)*/,
6713  0 /*offset_remainder (-14400%15)*/,
6714  0 /*delta_minutes*/,
6715  1972 /*until_year*/,
6716  1 /*until_month*/,
6717  1 /*until_day*/,
6718  0 /*until_time_code (0/15)*/,
6719  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6720  },
6721  // -4:00 Halifax A%sT 1974
6722  {
6723  &kAtcAllZonePolicyHalifax /*zone_policy*/,
6724  "A%T" /*format*/,
6725  -960 /*offset_code (-14400/15)*/,
6726  0 /*offset_remainder (-14400%15)*/,
6727  0 /*delta_minutes*/,
6728  1974 /*until_year*/,
6729  1 /*until_month*/,
6730  1 /*until_day*/,
6731  0 /*until_time_code (0/15)*/,
6732  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6733  },
6734  // -4:00 Canada A%sT
6735  {
6736  &kAtcAllZonePolicyCanada /*zone_policy*/,
6737  "A%T" /*format*/,
6738  -960 /*offset_code (-14400/15)*/,
6739  0 /*offset_remainder (-14400%15)*/,
6740  0 /*delta_minutes*/,
6741  32767 /*until_year*/,
6742  1 /*until_month*/,
6743  1 /*until_day*/,
6744  0 /*until_time_code (0/15)*/,
6745  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6746  },
6747 
6748 };
6749 
6750 static const char kAtcZoneNameAmerica_Glace_Bay[] = "America/Glace_Bay";
6751 
6752 const AtcZoneInfo kAtcAllZoneAmerica_Glace_Bay = {
6753  kAtcZoneNameAmerica_Glace_Bay /*name*/,
6754  0x9681f8dd /*zone_id*/,
6755  &kAtcAllZoneContext /*zone_context*/,
6756  6 /*num_eras*/,
6757  kAtcZoneEraAmerica_Glace_Bay /*eras*/,
6758  NULL /*target_info*/,
6759 };
6760 
6761 //---------------------------------------------------------------------------
6762 // Zone name: America/Goose_Bay
6763 // Zone Eras: 10
6764 //---------------------------------------------------------------------------
6765 
6766 static const AtcZoneEra kAtcZoneEraAmerica_Goose_Bay[] = {
6767  // -4:01:40 - LMT 1884
6768  {
6769  NULL /*zone_policy*/,
6770  "LMT" /*format*/,
6771  -967 /*offset_code (-14500/15)*/,
6772  5 /*offset_remainder (-14500%15)*/,
6773  0 /*delta_minutes*/,
6774  1884 /*until_year*/,
6775  1 /*until_month*/,
6776  1 /*until_day*/,
6777  0 /*until_time_code (0/15)*/,
6778  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6779  },
6780  // -3:30:52 - NST 1918
6781  {
6782  NULL /*zone_policy*/,
6783  "NST" /*format*/,
6784  -844 /*offset_code (-12652/15)*/,
6785  8 /*offset_remainder (-12652%15)*/,
6786  0 /*delta_minutes*/,
6787  1918 /*until_year*/,
6788  1 /*until_month*/,
6789  1 /*until_day*/,
6790  0 /*until_time_code (0/15)*/,
6791  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6792  },
6793  // -3:30:52 Canada N%sT 1919
6794  {
6795  &kAtcAllZonePolicyCanada /*zone_policy*/,
6796  "N%T" /*format*/,
6797  -844 /*offset_code (-12652/15)*/,
6798  8 /*offset_remainder (-12652%15)*/,
6799  0 /*delta_minutes*/,
6800  1919 /*until_year*/,
6801  1 /*until_month*/,
6802  1 /*until_day*/,
6803  0 /*until_time_code (0/15)*/,
6804  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6805  },
6806  // -3:30:52 - NST 1935 Mar 30
6807  {
6808  NULL /*zone_policy*/,
6809  "NST" /*format*/,
6810  -844 /*offset_code (-12652/15)*/,
6811  8 /*offset_remainder (-12652%15)*/,
6812  0 /*delta_minutes*/,
6813  1935 /*until_year*/,
6814  3 /*until_month*/,
6815  30 /*until_day*/,
6816  0 /*until_time_code (0/15)*/,
6817  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6818  },
6819  // -3:30 - NST 1936
6820  {
6821  NULL /*zone_policy*/,
6822  "NST" /*format*/,
6823  -840 /*offset_code (-12600/15)*/,
6824  0 /*offset_remainder (-12600%15)*/,
6825  0 /*delta_minutes*/,
6826  1936 /*until_year*/,
6827  1 /*until_month*/,
6828  1 /*until_day*/,
6829  0 /*until_time_code (0/15)*/,
6830  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6831  },
6832  // -3:30 StJohns N%sT 1942 May 11
6833  {
6834  &kAtcAllZonePolicyStJohns /*zone_policy*/,
6835  "N%T" /*format*/,
6836  -840 /*offset_code (-12600/15)*/,
6837  0 /*offset_remainder (-12600%15)*/,
6838  0 /*delta_minutes*/,
6839  1942 /*until_year*/,
6840  5 /*until_month*/,
6841  11 /*until_day*/,
6842  0 /*until_time_code (0/15)*/,
6843  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6844  },
6845  // -3:30 Canada N%sT 1946
6846  {
6847  &kAtcAllZonePolicyCanada /*zone_policy*/,
6848  "N%T" /*format*/,
6849  -840 /*offset_code (-12600/15)*/,
6850  0 /*offset_remainder (-12600%15)*/,
6851  0 /*delta_minutes*/,
6852  1946 /*until_year*/,
6853  1 /*until_month*/,
6854  1 /*until_day*/,
6855  0 /*until_time_code (0/15)*/,
6856  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6857  },
6858  // -3:30 StJohns N%sT 1966 Mar 15 2:00
6859  {
6860  &kAtcAllZonePolicyStJohns /*zone_policy*/,
6861  "N%T" /*format*/,
6862  -840 /*offset_code (-12600/15)*/,
6863  0 /*offset_remainder (-12600%15)*/,
6864  0 /*delta_minutes*/,
6865  1966 /*until_year*/,
6866  3 /*until_month*/,
6867  15 /*until_day*/,
6868  480 /*until_time_code (7200/15)*/,
6869  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6870  },
6871  // -4:00 StJohns A%sT 2011 Nov
6872  {
6873  &kAtcAllZonePolicyStJohns /*zone_policy*/,
6874  "A%T" /*format*/,
6875  -960 /*offset_code (-14400/15)*/,
6876  0 /*offset_remainder (-14400%15)*/,
6877  0 /*delta_minutes*/,
6878  2011 /*until_year*/,
6879  11 /*until_month*/,
6880  1 /*until_day*/,
6881  0 /*until_time_code (0/15)*/,
6882  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6883  },
6884  // -4:00 Canada A%sT
6885  {
6886  &kAtcAllZonePolicyCanada /*zone_policy*/,
6887  "A%T" /*format*/,
6888  -960 /*offset_code (-14400/15)*/,
6889  0 /*offset_remainder (-14400%15)*/,
6890  0 /*delta_minutes*/,
6891  32767 /*until_year*/,
6892  1 /*until_month*/,
6893  1 /*until_day*/,
6894  0 /*until_time_code (0/15)*/,
6895  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6896  },
6897 
6898 };
6899 
6900 static const char kAtcZoneNameAmerica_Goose_Bay[] = "America/Goose_Bay";
6901 
6902 const AtcZoneInfo kAtcAllZoneAmerica_Goose_Bay = {
6903  kAtcZoneNameAmerica_Goose_Bay /*name*/,
6904  0xb649541e /*zone_id*/,
6905  &kAtcAllZoneContext /*zone_context*/,
6906  10 /*num_eras*/,
6907  kAtcZoneEraAmerica_Goose_Bay /*eras*/,
6908  NULL /*target_info*/,
6909 };
6910 
6911 //---------------------------------------------------------------------------
6912 // Zone name: America/Grand_Turk
6913 // Zone Eras: 6
6914 //---------------------------------------------------------------------------
6915 
6916 static const AtcZoneEra kAtcZoneEraAmerica_Grand_Turk[] = {
6917  // -4:44:32 - LMT 1890
6918  {
6919  NULL /*zone_policy*/,
6920  "LMT" /*format*/,
6921  -1139 /*offset_code (-17072/15)*/,
6922  13 /*offset_remainder (-17072%15)*/,
6923  0 /*delta_minutes*/,
6924  1890 /*until_year*/,
6925  1 /*until_month*/,
6926  1 /*until_day*/,
6927  0 /*until_time_code (0/15)*/,
6928  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6929  },
6930  // -5:07:10 - KMT 1912 Feb
6931  {
6932  NULL /*zone_policy*/,
6933  "KMT" /*format*/,
6934  -1229 /*offset_code (-18430/15)*/,
6935  5 /*offset_remainder (-18430%15)*/,
6936  0 /*delta_minutes*/,
6937  1912 /*until_year*/,
6938  2 /*until_month*/,
6939  1 /*until_day*/,
6940  0 /*until_time_code (0/15)*/,
6941  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6942  },
6943  // -5:00 - EST 1979
6944  {
6945  NULL /*zone_policy*/,
6946  "EST" /*format*/,
6947  -1200 /*offset_code (-18000/15)*/,
6948  0 /*offset_remainder (-18000%15)*/,
6949  0 /*delta_minutes*/,
6950  1979 /*until_year*/,
6951  1 /*until_month*/,
6952  1 /*until_day*/,
6953  0 /*until_time_code (0/15)*/,
6954  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6955  },
6956  // -5:00 US E%sT 2015 Mar 8 2:00
6957  {
6958  &kAtcAllZonePolicyUS /*zone_policy*/,
6959  "E%T" /*format*/,
6960  -1200 /*offset_code (-18000/15)*/,
6961  0 /*offset_remainder (-18000%15)*/,
6962  0 /*delta_minutes*/,
6963  2015 /*until_year*/,
6964  3 /*until_month*/,
6965  8 /*until_day*/,
6966  480 /*until_time_code (7200/15)*/,
6967  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6968  },
6969  // -4:00 - AST 2018 Mar 11 3:00
6970  {
6971  NULL /*zone_policy*/,
6972  "AST" /*format*/,
6973  -960 /*offset_code (-14400/15)*/,
6974  0 /*offset_remainder (-14400%15)*/,
6975  0 /*delta_minutes*/,
6976  2018 /*until_year*/,
6977  3 /*until_month*/,
6978  11 /*until_day*/,
6979  720 /*until_time_code (10800/15)*/,
6980  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6981  },
6982  // -5:00 US E%sT
6983  {
6984  &kAtcAllZonePolicyUS /*zone_policy*/,
6985  "E%T" /*format*/,
6986  -1200 /*offset_code (-18000/15)*/,
6987  0 /*offset_remainder (-18000%15)*/,
6988  0 /*delta_minutes*/,
6989  32767 /*until_year*/,
6990  1 /*until_month*/,
6991  1 /*until_day*/,
6992  0 /*until_time_code (0/15)*/,
6993  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
6994  },
6995 
6996 };
6997 
6998 static const char kAtcZoneNameAmerica_Grand_Turk[] = "America/Grand_Turk";
6999 
7000 const AtcZoneInfo kAtcAllZoneAmerica_Grand_Turk = {
7001  kAtcZoneNameAmerica_Grand_Turk /*name*/,
7002  0x6e216197 /*zone_id*/,
7003  &kAtcAllZoneContext /*zone_context*/,
7004  6 /*num_eras*/,
7005  kAtcZoneEraAmerica_Grand_Turk /*eras*/,
7006  NULL /*target_info*/,
7007 };
7008 
7009 //---------------------------------------------------------------------------
7010 // Zone name: America/Guatemala
7011 // Zone Eras: 2
7012 //---------------------------------------------------------------------------
7013 
7014 static const AtcZoneEra kAtcZoneEraAmerica_Guatemala[] = {
7015  // -6:02:04 - LMT 1918 Oct 5
7016  {
7017  NULL /*zone_policy*/,
7018  "LMT" /*format*/,
7019  -1449 /*offset_code (-21724/15)*/,
7020  11 /*offset_remainder (-21724%15)*/,
7021  0 /*delta_minutes*/,
7022  1918 /*until_year*/,
7023  10 /*until_month*/,
7024  5 /*until_day*/,
7025  0 /*until_time_code (0/15)*/,
7026  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7027  },
7028  // -6:00 Guat C%sT
7029  {
7030  &kAtcAllZonePolicyGuat /*zone_policy*/,
7031  "C%T" /*format*/,
7032  -1440 /*offset_code (-21600/15)*/,
7033  0 /*offset_remainder (-21600%15)*/,
7034  0 /*delta_minutes*/,
7035  32767 /*until_year*/,
7036  1 /*until_month*/,
7037  1 /*until_day*/,
7038  0 /*until_time_code (0/15)*/,
7039  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7040  },
7041 
7042 };
7043 
7044 static const char kAtcZoneNameAmerica_Guatemala[] = "America/Guatemala";
7045 
7046 const AtcZoneInfo kAtcAllZoneAmerica_Guatemala = {
7047  kAtcZoneNameAmerica_Guatemala /*name*/,
7048  0x0c8259f7 /*zone_id*/,
7049  &kAtcAllZoneContext /*zone_context*/,
7050  2 /*num_eras*/,
7051  kAtcZoneEraAmerica_Guatemala /*eras*/,
7052  NULL /*target_info*/,
7053 };
7054 
7055 //---------------------------------------------------------------------------
7056 // Zone name: America/Guayaquil
7057 // Zone Eras: 3
7058 //---------------------------------------------------------------------------
7059 
7060 static const AtcZoneEra kAtcZoneEraAmerica_Guayaquil[] = {
7061  // -5:19:20 - LMT 1890
7062  {
7063  NULL /*zone_policy*/,
7064  "LMT" /*format*/,
7065  -1278 /*offset_code (-19160/15)*/,
7066  10 /*offset_remainder (-19160%15)*/,
7067  0 /*delta_minutes*/,
7068  1890 /*until_year*/,
7069  1 /*until_month*/,
7070  1 /*until_day*/,
7071  0 /*until_time_code (0/15)*/,
7072  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7073  },
7074  // -5:14:00 - QMT 1931
7075  {
7076  NULL /*zone_policy*/,
7077  "QMT" /*format*/,
7078  -1256 /*offset_code (-18840/15)*/,
7079  0 /*offset_remainder (-18840%15)*/,
7080  0 /*delta_minutes*/,
7081  1931 /*until_year*/,
7082  1 /*until_month*/,
7083  1 /*until_day*/,
7084  0 /*until_time_code (0/15)*/,
7085  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7086  },
7087  // -5:00 Ecuador -05/-04
7088  {
7089  &kAtcAllZonePolicyEcuador /*zone_policy*/,
7090  "-05/-04" /*format*/,
7091  -1200 /*offset_code (-18000/15)*/,
7092  0 /*offset_remainder (-18000%15)*/,
7093  0 /*delta_minutes*/,
7094  32767 /*until_year*/,
7095  1 /*until_month*/,
7096  1 /*until_day*/,
7097  0 /*until_time_code (0/15)*/,
7098  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7099  },
7100 
7101 };
7102 
7103 static const char kAtcZoneNameAmerica_Guayaquil[] = "America/Guayaquil";
7104 
7105 const AtcZoneInfo kAtcAllZoneAmerica_Guayaquil = {
7106  kAtcZoneNameAmerica_Guayaquil /*name*/,
7107  0x17e64958 /*zone_id*/,
7108  &kAtcAllZoneContext /*zone_context*/,
7109  3 /*num_eras*/,
7110  kAtcZoneEraAmerica_Guayaquil /*eras*/,
7111  NULL /*target_info*/,
7112 };
7113 
7114 //---------------------------------------------------------------------------
7115 // Zone name: America/Guyana
7116 // Zone Eras: 5
7117 //---------------------------------------------------------------------------
7118 
7119 static const AtcZoneEra kAtcZoneEraAmerica_Guyana[] = {
7120  // -3:52:39 - LMT 1911 Aug 1
7121  {
7122  NULL /*zone_policy*/,
7123  "LMT" /*format*/,
7124  -931 /*offset_code (-13959/15)*/,
7125  6 /*offset_remainder (-13959%15)*/,
7126  0 /*delta_minutes*/,
7127  1911 /*until_year*/,
7128  8 /*until_month*/,
7129  1 /*until_day*/,
7130  0 /*until_time_code (0/15)*/,
7131  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7132  },
7133  // -4:00 - -04 1915 Mar 1
7134  {
7135  NULL /*zone_policy*/,
7136  "-04" /*format*/,
7137  -960 /*offset_code (-14400/15)*/,
7138  0 /*offset_remainder (-14400%15)*/,
7139  0 /*delta_minutes*/,
7140  1915 /*until_year*/,
7141  3 /*until_month*/,
7142  1 /*until_day*/,
7143  0 /*until_time_code (0/15)*/,
7144  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7145  },
7146  // -3:45 - -0345 1975 Aug 1
7147  {
7148  NULL /*zone_policy*/,
7149  "-0345" /*format*/,
7150  -900 /*offset_code (-13500/15)*/,
7151  0 /*offset_remainder (-13500%15)*/,
7152  0 /*delta_minutes*/,
7153  1975 /*until_year*/,
7154  8 /*until_month*/,
7155  1 /*until_day*/,
7156  0 /*until_time_code (0/15)*/,
7157  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7158  },
7159  // -3:00 - -03 1992 Mar 29 1:00
7160  {
7161  NULL /*zone_policy*/,
7162  "-03" /*format*/,
7163  -720 /*offset_code (-10800/15)*/,
7164  0 /*offset_remainder (-10800%15)*/,
7165  0 /*delta_minutes*/,
7166  1992 /*until_year*/,
7167  3 /*until_month*/,
7168  29 /*until_day*/,
7169  240 /*until_time_code (3600/15)*/,
7170  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7171  },
7172  // -4:00 - -04
7173  {
7174  NULL /*zone_policy*/,
7175  "-04" /*format*/,
7176  -960 /*offset_code (-14400/15)*/,
7177  0 /*offset_remainder (-14400%15)*/,
7178  0 /*delta_minutes*/,
7179  32767 /*until_year*/,
7180  1 /*until_month*/,
7181  1 /*until_day*/,
7182  0 /*until_time_code (0/15)*/,
7183  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7184  },
7185 
7186 };
7187 
7188 static const char kAtcZoneNameAmerica_Guyana[] = "America/Guyana";
7189 
7190 const AtcZoneInfo kAtcAllZoneAmerica_Guyana = {
7191  kAtcZoneNameAmerica_Guyana /*name*/,
7192  0x9ff7bd0b /*zone_id*/,
7193  &kAtcAllZoneContext /*zone_context*/,
7194  5 /*num_eras*/,
7195  kAtcZoneEraAmerica_Guyana /*eras*/,
7196  NULL /*target_info*/,
7197 };
7198 
7199 //---------------------------------------------------------------------------
7200 // Zone name: America/Halifax
7201 // Zone Eras: 7
7202 //---------------------------------------------------------------------------
7203 
7204 static const AtcZoneEra kAtcZoneEraAmerica_Halifax[] = {
7205  // -4:14:24 - LMT 1902 Jun 15
7206  {
7207  NULL /*zone_policy*/,
7208  "LMT" /*format*/,
7209  -1018 /*offset_code (-15264/15)*/,
7210  6 /*offset_remainder (-15264%15)*/,
7211  0 /*delta_minutes*/,
7212  1902 /*until_year*/,
7213  6 /*until_month*/,
7214  15 /*until_day*/,
7215  0 /*until_time_code (0/15)*/,
7216  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7217  },
7218  // -4:00 Halifax A%sT 1918
7219  {
7220  &kAtcAllZonePolicyHalifax /*zone_policy*/,
7221  "A%T" /*format*/,
7222  -960 /*offset_code (-14400/15)*/,
7223  0 /*offset_remainder (-14400%15)*/,
7224  0 /*delta_minutes*/,
7225  1918 /*until_year*/,
7226  1 /*until_month*/,
7227  1 /*until_day*/,
7228  0 /*until_time_code (0/15)*/,
7229  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7230  },
7231  // -4:00 Canada A%sT 1919
7232  {
7233  &kAtcAllZonePolicyCanada /*zone_policy*/,
7234  "A%T" /*format*/,
7235  -960 /*offset_code (-14400/15)*/,
7236  0 /*offset_remainder (-14400%15)*/,
7237  0 /*delta_minutes*/,
7238  1919 /*until_year*/,
7239  1 /*until_month*/,
7240  1 /*until_day*/,
7241  0 /*until_time_code (0/15)*/,
7242  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7243  },
7244  // -4:00 Halifax A%sT 1942 Feb 9 2:00s
7245  {
7246  &kAtcAllZonePolicyHalifax /*zone_policy*/,
7247  "A%T" /*format*/,
7248  -960 /*offset_code (-14400/15)*/,
7249  0 /*offset_remainder (-14400%15)*/,
7250  0 /*delta_minutes*/,
7251  1942 /*until_year*/,
7252  2 /*until_month*/,
7253  9 /*until_day*/,
7254  480 /*until_time_code (7200/15)*/,
7255  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
7256  },
7257  // -4:00 Canada A%sT 1946
7258  {
7259  &kAtcAllZonePolicyCanada /*zone_policy*/,
7260  "A%T" /*format*/,
7261  -960 /*offset_code (-14400/15)*/,
7262  0 /*offset_remainder (-14400%15)*/,
7263  0 /*delta_minutes*/,
7264  1946 /*until_year*/,
7265  1 /*until_month*/,
7266  1 /*until_day*/,
7267  0 /*until_time_code (0/15)*/,
7268  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7269  },
7270  // -4:00 Halifax A%sT 1974
7271  {
7272  &kAtcAllZonePolicyHalifax /*zone_policy*/,
7273  "A%T" /*format*/,
7274  -960 /*offset_code (-14400/15)*/,
7275  0 /*offset_remainder (-14400%15)*/,
7276  0 /*delta_minutes*/,
7277  1974 /*until_year*/,
7278  1 /*until_month*/,
7279  1 /*until_day*/,
7280  0 /*until_time_code (0/15)*/,
7281  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7282  },
7283  // -4:00 Canada A%sT
7284  {
7285  &kAtcAllZonePolicyCanada /*zone_policy*/,
7286  "A%T" /*format*/,
7287  -960 /*offset_code (-14400/15)*/,
7288  0 /*offset_remainder (-14400%15)*/,
7289  0 /*delta_minutes*/,
7290  32767 /*until_year*/,
7291  1 /*until_month*/,
7292  1 /*until_day*/,
7293  0 /*until_time_code (0/15)*/,
7294  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7295  },
7296 
7297 };
7298 
7299 static const char kAtcZoneNameAmerica_Halifax[] = "America/Halifax";
7300 
7301 const AtcZoneInfo kAtcAllZoneAmerica_Halifax = {
7302  kAtcZoneNameAmerica_Halifax /*name*/,
7303  0xbc5b7183 /*zone_id*/,
7304  &kAtcAllZoneContext /*zone_context*/,
7305  7 /*num_eras*/,
7306  kAtcZoneEraAmerica_Halifax /*eras*/,
7307  NULL /*target_info*/,
7308 };
7309 
7310 //---------------------------------------------------------------------------
7311 // Zone name: America/Havana
7312 // Zone Eras: 3
7313 //---------------------------------------------------------------------------
7314 
7315 static const AtcZoneEra kAtcZoneEraAmerica_Havana[] = {
7316  // -5:29:28 - LMT 1890
7317  {
7318  NULL /*zone_policy*/,
7319  "LMT" /*format*/,
7320  -1318 /*offset_code (-19768/15)*/,
7321  2 /*offset_remainder (-19768%15)*/,
7322  0 /*delta_minutes*/,
7323  1890 /*until_year*/,
7324  1 /*until_month*/,
7325  1 /*until_day*/,
7326  0 /*until_time_code (0/15)*/,
7327  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7328  },
7329  // -5:29:36 - HMT 1925 Jul 19 12:00
7330  {
7331  NULL /*zone_policy*/,
7332  "HMT" /*format*/,
7333  -1319 /*offset_code (-19776/15)*/,
7334  9 /*offset_remainder (-19776%15)*/,
7335  0 /*delta_minutes*/,
7336  1925 /*until_year*/,
7337  7 /*until_month*/,
7338  19 /*until_day*/,
7339  2880 /*until_time_code (43200/15)*/,
7340  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7341  },
7342  // -5:00 Cuba C%sT
7343  {
7344  &kAtcAllZonePolicyCuba /*zone_policy*/,
7345  "C%T" /*format*/,
7346  -1200 /*offset_code (-18000/15)*/,
7347  0 /*offset_remainder (-18000%15)*/,
7348  0 /*delta_minutes*/,
7349  32767 /*until_year*/,
7350  1 /*until_month*/,
7351  1 /*until_day*/,
7352  0 /*until_time_code (0/15)*/,
7353  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7354  },
7355 
7356 };
7357 
7358 static const char kAtcZoneNameAmerica_Havana[] = "America/Havana";
7359 
7360 const AtcZoneInfo kAtcAllZoneAmerica_Havana = {
7361  kAtcZoneNameAmerica_Havana /*name*/,
7362  0xa0e15675 /*zone_id*/,
7363  &kAtcAllZoneContext /*zone_context*/,
7364  3 /*num_eras*/,
7365  kAtcZoneEraAmerica_Havana /*eras*/,
7366  NULL /*target_info*/,
7367 };
7368 
7369 //---------------------------------------------------------------------------
7370 // Zone name: America/Hermosillo
7371 // Zone Eras: 9
7372 //---------------------------------------------------------------------------
7373 
7374 static const AtcZoneEra kAtcZoneEraAmerica_Hermosillo[] = {
7375  // -7:23:52 - LMT 1922 Jan 1 7:00u
7376  {
7377  NULL /*zone_policy*/,
7378  "LMT" /*format*/,
7379  -1776 /*offset_code (-26632/15)*/,
7380  8 /*offset_remainder (-26632%15)*/,
7381  0 /*delta_minutes*/,
7382  1922 /*until_year*/,
7383  1 /*until_month*/,
7384  1 /*until_day*/,
7385  1680 /*until_time_code (25200/15)*/,
7386  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
7387  },
7388  // -7:00 - MST 1927 Jun 10 23:00
7389  {
7390  NULL /*zone_policy*/,
7391  "MST" /*format*/,
7392  -1680 /*offset_code (-25200/15)*/,
7393  0 /*offset_remainder (-25200%15)*/,
7394  0 /*delta_minutes*/,
7395  1927 /*until_year*/,
7396  6 /*until_month*/,
7397  10 /*until_day*/,
7398  5520 /*until_time_code (82800/15)*/,
7399  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7400  },
7401  // -6:00 - CST 1930 Nov 15
7402  {
7403  NULL /*zone_policy*/,
7404  "CST" /*format*/,
7405  -1440 /*offset_code (-21600/15)*/,
7406  0 /*offset_remainder (-21600%15)*/,
7407  0 /*delta_minutes*/,
7408  1930 /*until_year*/,
7409  11 /*until_month*/,
7410  15 /*until_day*/,
7411  0 /*until_time_code (0/15)*/,
7412  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7413  },
7414  // -7:00 Mexico M%sT 1932 Apr 1
7415  {
7416  &kAtcAllZonePolicyMexico /*zone_policy*/,
7417  "M%T" /*format*/,
7418  -1680 /*offset_code (-25200/15)*/,
7419  0 /*offset_remainder (-25200%15)*/,
7420  0 /*delta_minutes*/,
7421  1932 /*until_year*/,
7422  4 /*until_month*/,
7423  1 /*until_day*/,
7424  0 /*until_time_code (0/15)*/,
7425  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7426  },
7427  // -6:00 - CST 1942 Apr 24
7428  {
7429  NULL /*zone_policy*/,
7430  "CST" /*format*/,
7431  -1440 /*offset_code (-21600/15)*/,
7432  0 /*offset_remainder (-21600%15)*/,
7433  0 /*delta_minutes*/,
7434  1942 /*until_year*/,
7435  4 /*until_month*/,
7436  24 /*until_day*/,
7437  0 /*until_time_code (0/15)*/,
7438  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7439  },
7440  // -7:00 - MST 1949 Jan 14
7441  {
7442  NULL /*zone_policy*/,
7443  "MST" /*format*/,
7444  -1680 /*offset_code (-25200/15)*/,
7445  0 /*offset_remainder (-25200%15)*/,
7446  0 /*delta_minutes*/,
7447  1949 /*until_year*/,
7448  1 /*until_month*/,
7449  14 /*until_day*/,
7450  0 /*until_time_code (0/15)*/,
7451  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7452  },
7453  // -8:00 - PST 1970
7454  {
7455  NULL /*zone_policy*/,
7456  "PST" /*format*/,
7457  -1920 /*offset_code (-28800/15)*/,
7458  0 /*offset_remainder (-28800%15)*/,
7459  0 /*delta_minutes*/,
7460  1970 /*until_year*/,
7461  1 /*until_month*/,
7462  1 /*until_day*/,
7463  0 /*until_time_code (0/15)*/,
7464  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7465  },
7466  // -7:00 Mexico M%sT 1999
7467  {
7468  &kAtcAllZonePolicyMexico /*zone_policy*/,
7469  "M%T" /*format*/,
7470  -1680 /*offset_code (-25200/15)*/,
7471  0 /*offset_remainder (-25200%15)*/,
7472  0 /*delta_minutes*/,
7473  1999 /*until_year*/,
7474  1 /*until_month*/,
7475  1 /*until_day*/,
7476  0 /*until_time_code (0/15)*/,
7477  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7478  },
7479  // -7:00 - MST
7480  {
7481  NULL /*zone_policy*/,
7482  "MST" /*format*/,
7483  -1680 /*offset_code (-25200/15)*/,
7484  0 /*offset_remainder (-25200%15)*/,
7485  0 /*delta_minutes*/,
7486  32767 /*until_year*/,
7487  1 /*until_month*/,
7488  1 /*until_day*/,
7489  0 /*until_time_code (0/15)*/,
7490  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7491  },
7492 
7493 };
7494 
7495 static const char kAtcZoneNameAmerica_Hermosillo[] = "America/Hermosillo";
7496 
7497 const AtcZoneInfo kAtcAllZoneAmerica_Hermosillo = {
7498  kAtcZoneNameAmerica_Hermosillo /*name*/,
7499  0x065d21c4 /*zone_id*/,
7500  &kAtcAllZoneContext /*zone_context*/,
7501  9 /*num_eras*/,
7502  kAtcZoneEraAmerica_Hermosillo /*eras*/,
7503  NULL /*target_info*/,
7504 };
7505 
7506 //---------------------------------------------------------------------------
7507 // Zone name: America/Indiana/Indianapolis
7508 // Zone Eras: 11
7509 //---------------------------------------------------------------------------
7510 
7511 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Indianapolis[] = {
7512  // -5:44:38 - LMT 1883 Nov 18 18:00u
7513  {
7514  NULL /*zone_policy*/,
7515  "LMT" /*format*/,
7516  -1379 /*offset_code (-20678/15)*/,
7517  7 /*offset_remainder (-20678%15)*/,
7518  0 /*delta_minutes*/,
7519  1883 /*until_year*/,
7520  11 /*until_month*/,
7521  18 /*until_day*/,
7522  4320 /*until_time_code (64800/15)*/,
7523  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
7524  },
7525  // -6:00 US C%sT 1920
7526  {
7527  &kAtcAllZonePolicyUS /*zone_policy*/,
7528  "C%T" /*format*/,
7529  -1440 /*offset_code (-21600/15)*/,
7530  0 /*offset_remainder (-21600%15)*/,
7531  0 /*delta_minutes*/,
7532  1920 /*until_year*/,
7533  1 /*until_month*/,
7534  1 /*until_day*/,
7535  0 /*until_time_code (0/15)*/,
7536  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7537  },
7538  // -6:00 Indianapolis C%sT 1942
7539  {
7540  &kAtcAllZonePolicyIndianapolis /*zone_policy*/,
7541  "C%T" /*format*/,
7542  -1440 /*offset_code (-21600/15)*/,
7543  0 /*offset_remainder (-21600%15)*/,
7544  0 /*delta_minutes*/,
7545  1942 /*until_year*/,
7546  1 /*until_month*/,
7547  1 /*until_day*/,
7548  0 /*until_time_code (0/15)*/,
7549  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7550  },
7551  // -6:00 US C%sT 1946
7552  {
7553  &kAtcAllZonePolicyUS /*zone_policy*/,
7554  "C%T" /*format*/,
7555  -1440 /*offset_code (-21600/15)*/,
7556  0 /*offset_remainder (-21600%15)*/,
7557  0 /*delta_minutes*/,
7558  1946 /*until_year*/,
7559  1 /*until_month*/,
7560  1 /*until_day*/,
7561  0 /*until_time_code (0/15)*/,
7562  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7563  },
7564  // -6:00 Indianapolis C%sT 1955 Apr 24 2:00
7565  {
7566  &kAtcAllZonePolicyIndianapolis /*zone_policy*/,
7567  "C%T" /*format*/,
7568  -1440 /*offset_code (-21600/15)*/,
7569  0 /*offset_remainder (-21600%15)*/,
7570  0 /*delta_minutes*/,
7571  1955 /*until_year*/,
7572  4 /*until_month*/,
7573  24 /*until_day*/,
7574  480 /*until_time_code (7200/15)*/,
7575  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7576  },
7577  // -5:00 - EST 1957 Sep 29 2:00
7578  {
7579  NULL /*zone_policy*/,
7580  "EST" /*format*/,
7581  -1200 /*offset_code (-18000/15)*/,
7582  0 /*offset_remainder (-18000%15)*/,
7583  0 /*delta_minutes*/,
7584  1957 /*until_year*/,
7585  9 /*until_month*/,
7586  29 /*until_day*/,
7587  480 /*until_time_code (7200/15)*/,
7588  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7589  },
7590  // -6:00 - CST 1958 Apr 27 2:00
7591  {
7592  NULL /*zone_policy*/,
7593  "CST" /*format*/,
7594  -1440 /*offset_code (-21600/15)*/,
7595  0 /*offset_remainder (-21600%15)*/,
7596  0 /*delta_minutes*/,
7597  1958 /*until_year*/,
7598  4 /*until_month*/,
7599  27 /*until_day*/,
7600  480 /*until_time_code (7200/15)*/,
7601  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7602  },
7603  // -5:00 - EST 1969
7604  {
7605  NULL /*zone_policy*/,
7606  "EST" /*format*/,
7607  -1200 /*offset_code (-18000/15)*/,
7608  0 /*offset_remainder (-18000%15)*/,
7609  0 /*delta_minutes*/,
7610  1969 /*until_year*/,
7611  1 /*until_month*/,
7612  1 /*until_day*/,
7613  0 /*until_time_code (0/15)*/,
7614  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7615  },
7616  // -5:00 US E%sT 1971
7617  {
7618  &kAtcAllZonePolicyUS /*zone_policy*/,
7619  "E%T" /*format*/,
7620  -1200 /*offset_code (-18000/15)*/,
7621  0 /*offset_remainder (-18000%15)*/,
7622  0 /*delta_minutes*/,
7623  1971 /*until_year*/,
7624  1 /*until_month*/,
7625  1 /*until_day*/,
7626  0 /*until_time_code (0/15)*/,
7627  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7628  },
7629  // -5:00 - EST 2006
7630  {
7631  NULL /*zone_policy*/,
7632  "EST" /*format*/,
7633  -1200 /*offset_code (-18000/15)*/,
7634  0 /*offset_remainder (-18000%15)*/,
7635  0 /*delta_minutes*/,
7636  2006 /*until_year*/,
7637  1 /*until_month*/,
7638  1 /*until_day*/,
7639  0 /*until_time_code (0/15)*/,
7640  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7641  },
7642  // -5:00 US E%sT
7643  {
7644  &kAtcAllZonePolicyUS /*zone_policy*/,
7645  "E%T" /*format*/,
7646  -1200 /*offset_code (-18000/15)*/,
7647  0 /*offset_remainder (-18000%15)*/,
7648  0 /*delta_minutes*/,
7649  32767 /*until_year*/,
7650  1 /*until_month*/,
7651  1 /*until_day*/,
7652  0 /*until_time_code (0/15)*/,
7653  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7654  },
7655 
7656 };
7657 
7658 static const char kAtcZoneNameAmerica_Indiana_Indianapolis[] = "America/Indiana/Indianapolis";
7659 
7660 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Indianapolis = {
7661  kAtcZoneNameAmerica_Indiana_Indianapolis /*name*/,
7662  0x28a669a4 /*zone_id*/,
7663  &kAtcAllZoneContext /*zone_context*/,
7664  11 /*num_eras*/,
7665  kAtcZoneEraAmerica_Indiana_Indianapolis /*eras*/,
7666  NULL /*target_info*/,
7667 };
7668 
7669 //---------------------------------------------------------------------------
7670 // Zone name: America/Indiana/Knox
7671 // Zone Eras: 7
7672 //---------------------------------------------------------------------------
7673 
7674 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Knox[] = {
7675  // -5:46:30 - LMT 1883 Nov 18 18:00u
7676  {
7677  NULL /*zone_policy*/,
7678  "LMT" /*format*/,
7679  -1386 /*offset_code (-20790/15)*/,
7680  0 /*offset_remainder (-20790%15)*/,
7681  0 /*delta_minutes*/,
7682  1883 /*until_year*/,
7683  11 /*until_month*/,
7684  18 /*until_day*/,
7685  4320 /*until_time_code (64800/15)*/,
7686  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
7687  },
7688  // -6:00 US C%sT 1947
7689  {
7690  &kAtcAllZonePolicyUS /*zone_policy*/,
7691  "C%T" /*format*/,
7692  -1440 /*offset_code (-21600/15)*/,
7693  0 /*offset_remainder (-21600%15)*/,
7694  0 /*delta_minutes*/,
7695  1947 /*until_year*/,
7696  1 /*until_month*/,
7697  1 /*until_day*/,
7698  0 /*until_time_code (0/15)*/,
7699  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7700  },
7701  // -6:00 Starke C%sT 1962 Apr 29 2:00
7702  {
7703  &kAtcAllZonePolicyStarke /*zone_policy*/,
7704  "C%T" /*format*/,
7705  -1440 /*offset_code (-21600/15)*/,
7706  0 /*offset_remainder (-21600%15)*/,
7707  0 /*delta_minutes*/,
7708  1962 /*until_year*/,
7709  4 /*until_month*/,
7710  29 /*until_day*/,
7711  480 /*until_time_code (7200/15)*/,
7712  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7713  },
7714  // -5:00 - EST 1963 Oct 27 2:00
7715  {
7716  NULL /*zone_policy*/,
7717  "EST" /*format*/,
7718  -1200 /*offset_code (-18000/15)*/,
7719  0 /*offset_remainder (-18000%15)*/,
7720  0 /*delta_minutes*/,
7721  1963 /*until_year*/,
7722  10 /*until_month*/,
7723  27 /*until_day*/,
7724  480 /*until_time_code (7200/15)*/,
7725  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7726  },
7727  // -6:00 US C%sT 1991 Oct 27 2:00
7728  {
7729  &kAtcAllZonePolicyUS /*zone_policy*/,
7730  "C%T" /*format*/,
7731  -1440 /*offset_code (-21600/15)*/,
7732  0 /*offset_remainder (-21600%15)*/,
7733  0 /*delta_minutes*/,
7734  1991 /*until_year*/,
7735  10 /*until_month*/,
7736  27 /*until_day*/,
7737  480 /*until_time_code (7200/15)*/,
7738  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7739  },
7740  // -5:00 - EST 2006 Apr 2 2:00
7741  {
7742  NULL /*zone_policy*/,
7743  "EST" /*format*/,
7744  -1200 /*offset_code (-18000/15)*/,
7745  0 /*offset_remainder (-18000%15)*/,
7746  0 /*delta_minutes*/,
7747  2006 /*until_year*/,
7748  4 /*until_month*/,
7749  2 /*until_day*/,
7750  480 /*until_time_code (7200/15)*/,
7751  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7752  },
7753  // -6:00 US C%sT
7754  {
7755  &kAtcAllZonePolicyUS /*zone_policy*/,
7756  "C%T" /*format*/,
7757  -1440 /*offset_code (-21600/15)*/,
7758  0 /*offset_remainder (-21600%15)*/,
7759  0 /*delta_minutes*/,
7760  32767 /*until_year*/,
7761  1 /*until_month*/,
7762  1 /*until_day*/,
7763  0 /*until_time_code (0/15)*/,
7764  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7765  },
7766 
7767 };
7768 
7769 static const char kAtcZoneNameAmerica_Indiana_Knox[] = "America/Indiana/Knox";
7770 
7771 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Knox = {
7772  kAtcZoneNameAmerica_Indiana_Knox /*name*/,
7773  0x6554adc9 /*zone_id*/,
7774  &kAtcAllZoneContext /*zone_context*/,
7775  7 /*num_eras*/,
7776  kAtcZoneEraAmerica_Indiana_Knox /*eras*/,
7777  NULL /*target_info*/,
7778 };
7779 
7780 //---------------------------------------------------------------------------
7781 // Zone name: America/Indiana/Marengo
7782 // Zone Eras: 9
7783 //---------------------------------------------------------------------------
7784 
7785 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Marengo[] = {
7786  // -5:45:23 - LMT 1883 Nov 18 18:00u
7787  {
7788  NULL /*zone_policy*/,
7789  "LMT" /*format*/,
7790  -1382 /*offset_code (-20723/15)*/,
7791  7 /*offset_remainder (-20723%15)*/,
7792  0 /*delta_minutes*/,
7793  1883 /*until_year*/,
7794  11 /*until_month*/,
7795  18 /*until_day*/,
7796  4320 /*until_time_code (64800/15)*/,
7797  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
7798  },
7799  // -6:00 US C%sT 1951
7800  {
7801  &kAtcAllZonePolicyUS /*zone_policy*/,
7802  "C%T" /*format*/,
7803  -1440 /*offset_code (-21600/15)*/,
7804  0 /*offset_remainder (-21600%15)*/,
7805  0 /*delta_minutes*/,
7806  1951 /*until_year*/,
7807  1 /*until_month*/,
7808  1 /*until_day*/,
7809  0 /*until_time_code (0/15)*/,
7810  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7811  },
7812  // -6:00 Marengo C%sT 1961 Apr 30 2:00
7813  {
7814  &kAtcAllZonePolicyMarengo /*zone_policy*/,
7815  "C%T" /*format*/,
7816  -1440 /*offset_code (-21600/15)*/,
7817  0 /*offset_remainder (-21600%15)*/,
7818  0 /*delta_minutes*/,
7819  1961 /*until_year*/,
7820  4 /*until_month*/,
7821  30 /*until_day*/,
7822  480 /*until_time_code (7200/15)*/,
7823  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7824  },
7825  // -5:00 - EST 1969
7826  {
7827  NULL /*zone_policy*/,
7828  "EST" /*format*/,
7829  -1200 /*offset_code (-18000/15)*/,
7830  0 /*offset_remainder (-18000%15)*/,
7831  0 /*delta_minutes*/,
7832  1969 /*until_year*/,
7833  1 /*until_month*/,
7834  1 /*until_day*/,
7835  0 /*until_time_code (0/15)*/,
7836  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7837  },
7838  // -5:00 US E%sT 1974 Jan 6 2:00
7839  {
7840  &kAtcAllZonePolicyUS /*zone_policy*/,
7841  "E%T" /*format*/,
7842  -1200 /*offset_code (-18000/15)*/,
7843  0 /*offset_remainder (-18000%15)*/,
7844  0 /*delta_minutes*/,
7845  1974 /*until_year*/,
7846  1 /*until_month*/,
7847  6 /*until_day*/,
7848  480 /*until_time_code (7200/15)*/,
7849  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7850  },
7851  // -6:00 1:00 CDT 1974 Oct 27 2:00
7852  {
7853  NULL /*zone_policy*/,
7854  "CDT" /*format*/,
7855  -1440 /*offset_code (-21600/15)*/,
7856  0 /*offset_remainder (-21600%15)*/,
7857  60 /*delta_minutes*/,
7858  1974 /*until_year*/,
7859  10 /*until_month*/,
7860  27 /*until_day*/,
7861  480 /*until_time_code (7200/15)*/,
7862  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7863  },
7864  // -5:00 US E%sT 1976
7865  {
7866  &kAtcAllZonePolicyUS /*zone_policy*/,
7867  "E%T" /*format*/,
7868  -1200 /*offset_code (-18000/15)*/,
7869  0 /*offset_remainder (-18000%15)*/,
7870  0 /*delta_minutes*/,
7871  1976 /*until_year*/,
7872  1 /*until_month*/,
7873  1 /*until_day*/,
7874  0 /*until_time_code (0/15)*/,
7875  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7876  },
7877  // -5:00 - EST 2006
7878  {
7879  NULL /*zone_policy*/,
7880  "EST" /*format*/,
7881  -1200 /*offset_code (-18000/15)*/,
7882  0 /*offset_remainder (-18000%15)*/,
7883  0 /*delta_minutes*/,
7884  2006 /*until_year*/,
7885  1 /*until_month*/,
7886  1 /*until_day*/,
7887  0 /*until_time_code (0/15)*/,
7888  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7889  },
7890  // -5:00 US E%sT
7891  {
7892  &kAtcAllZonePolicyUS /*zone_policy*/,
7893  "E%T" /*format*/,
7894  -1200 /*offset_code (-18000/15)*/,
7895  0 /*offset_remainder (-18000%15)*/,
7896  0 /*delta_minutes*/,
7897  32767 /*until_year*/,
7898  1 /*until_month*/,
7899  1 /*until_day*/,
7900  0 /*until_time_code (0/15)*/,
7901  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7902  },
7903 
7904 };
7905 
7906 static const char kAtcZoneNameAmerica_Indiana_Marengo[] = "America/Indiana/Marengo";
7907 
7908 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Marengo = {
7909  kAtcZoneNameAmerica_Indiana_Marengo /*name*/,
7910  0x2feeee72 /*zone_id*/,
7911  &kAtcAllZoneContext /*zone_context*/,
7912  9 /*num_eras*/,
7913  kAtcZoneEraAmerica_Indiana_Marengo /*eras*/,
7914  NULL /*target_info*/,
7915 };
7916 
7917 //---------------------------------------------------------------------------
7918 // Zone name: America/Indiana/Petersburg
7919 // Zone Eras: 8
7920 //---------------------------------------------------------------------------
7921 
7922 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Petersburg[] = {
7923  // -5:49:07 - LMT 1883 Nov 18 18:00u
7924  {
7925  NULL /*zone_policy*/,
7926  "LMT" /*format*/,
7927  -1397 /*offset_code (-20947/15)*/,
7928  8 /*offset_remainder (-20947%15)*/,
7929  0 /*delta_minutes*/,
7930  1883 /*until_year*/,
7931  11 /*until_month*/,
7932  18 /*until_day*/,
7933  4320 /*until_time_code (64800/15)*/,
7934  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
7935  },
7936  // -6:00 US C%sT 1955
7937  {
7938  &kAtcAllZonePolicyUS /*zone_policy*/,
7939  "C%T" /*format*/,
7940  -1440 /*offset_code (-21600/15)*/,
7941  0 /*offset_remainder (-21600%15)*/,
7942  0 /*delta_minutes*/,
7943  1955 /*until_year*/,
7944  1 /*until_month*/,
7945  1 /*until_day*/,
7946  0 /*until_time_code (0/15)*/,
7947  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7948  },
7949  // -6:00 Pike C%sT 1965 Apr 25 2:00
7950  {
7951  &kAtcAllZonePolicyPike /*zone_policy*/,
7952  "C%T" /*format*/,
7953  -1440 /*offset_code (-21600/15)*/,
7954  0 /*offset_remainder (-21600%15)*/,
7955  0 /*delta_minutes*/,
7956  1965 /*until_year*/,
7957  4 /*until_month*/,
7958  25 /*until_day*/,
7959  480 /*until_time_code (7200/15)*/,
7960  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7961  },
7962  // -5:00 - EST 1966 Oct 30 2:00
7963  {
7964  NULL /*zone_policy*/,
7965  "EST" /*format*/,
7966  -1200 /*offset_code (-18000/15)*/,
7967  0 /*offset_remainder (-18000%15)*/,
7968  0 /*delta_minutes*/,
7969  1966 /*until_year*/,
7970  10 /*until_month*/,
7971  30 /*until_day*/,
7972  480 /*until_time_code (7200/15)*/,
7973  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7974  },
7975  // -6:00 US C%sT 1977 Oct 30 2:00
7976  {
7977  &kAtcAllZonePolicyUS /*zone_policy*/,
7978  "C%T" /*format*/,
7979  -1440 /*offset_code (-21600/15)*/,
7980  0 /*offset_remainder (-21600%15)*/,
7981  0 /*delta_minutes*/,
7982  1977 /*until_year*/,
7983  10 /*until_month*/,
7984  30 /*until_day*/,
7985  480 /*until_time_code (7200/15)*/,
7986  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
7987  },
7988  // -5:00 - EST 2006 Apr 2 2:00
7989  {
7990  NULL /*zone_policy*/,
7991  "EST" /*format*/,
7992  -1200 /*offset_code (-18000/15)*/,
7993  0 /*offset_remainder (-18000%15)*/,
7994  0 /*delta_minutes*/,
7995  2006 /*until_year*/,
7996  4 /*until_month*/,
7997  2 /*until_day*/,
7998  480 /*until_time_code (7200/15)*/,
7999  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8000  },
8001  // -6:00 US C%sT 2007 Nov 4 2:00
8002  {
8003  &kAtcAllZonePolicyUS /*zone_policy*/,
8004  "C%T" /*format*/,
8005  -1440 /*offset_code (-21600/15)*/,
8006  0 /*offset_remainder (-21600%15)*/,
8007  0 /*delta_minutes*/,
8008  2007 /*until_year*/,
8009  11 /*until_month*/,
8010  4 /*until_day*/,
8011  480 /*until_time_code (7200/15)*/,
8012  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8013  },
8014  // -5:00 US E%sT
8015  {
8016  &kAtcAllZonePolicyUS /*zone_policy*/,
8017  "E%T" /*format*/,
8018  -1200 /*offset_code (-18000/15)*/,
8019  0 /*offset_remainder (-18000%15)*/,
8020  0 /*delta_minutes*/,
8021  32767 /*until_year*/,
8022  1 /*until_month*/,
8023  1 /*until_day*/,
8024  0 /*until_time_code (0/15)*/,
8025  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8026  },
8027 
8028 };
8029 
8030 static const char kAtcZoneNameAmerica_Indiana_Petersburg[] = "America/Indiana/Petersburg";
8031 
8032 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Petersburg = {
8033  kAtcZoneNameAmerica_Indiana_Petersburg /*name*/,
8034  0x94ac7acc /*zone_id*/,
8035  &kAtcAllZoneContext /*zone_context*/,
8036  8 /*num_eras*/,
8037  kAtcZoneEraAmerica_Indiana_Petersburg /*eras*/,
8038  NULL /*target_info*/,
8039 };
8040 
8041 //---------------------------------------------------------------------------
8042 // Zone name: America/Indiana/Tell_City
8043 // Zone Eras: 8
8044 //---------------------------------------------------------------------------
8045 
8046 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Tell_City[] = {
8047  // -5:47:03 - LMT 1883 Nov 18 18:00u
8048  {
8049  NULL /*zone_policy*/,
8050  "LMT" /*format*/,
8051  -1389 /*offset_code (-20823/15)*/,
8052  12 /*offset_remainder (-20823%15)*/,
8053  0 /*delta_minutes*/,
8054  1883 /*until_year*/,
8055  11 /*until_month*/,
8056  18 /*until_day*/,
8057  4320 /*until_time_code (64800/15)*/,
8058  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
8059  },
8060  // -6:00 US C%sT 1946
8061  {
8062  &kAtcAllZonePolicyUS /*zone_policy*/,
8063  "C%T" /*format*/,
8064  -1440 /*offset_code (-21600/15)*/,
8065  0 /*offset_remainder (-21600%15)*/,
8066  0 /*delta_minutes*/,
8067  1946 /*until_year*/,
8068  1 /*until_month*/,
8069  1 /*until_day*/,
8070  0 /*until_time_code (0/15)*/,
8071  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8072  },
8073  // -6:00 Perry C%sT 1964 Apr 26 2:00
8074  {
8075  &kAtcAllZonePolicyPerry /*zone_policy*/,
8076  "C%T" /*format*/,
8077  -1440 /*offset_code (-21600/15)*/,
8078  0 /*offset_remainder (-21600%15)*/,
8079  0 /*delta_minutes*/,
8080  1964 /*until_year*/,
8081  4 /*until_month*/,
8082  26 /*until_day*/,
8083  480 /*until_time_code (7200/15)*/,
8084  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8085  },
8086  // -5:00 - EST 1967 Oct 29 2:00
8087  {
8088  NULL /*zone_policy*/,
8089  "EST" /*format*/,
8090  -1200 /*offset_code (-18000/15)*/,
8091  0 /*offset_remainder (-18000%15)*/,
8092  0 /*delta_minutes*/,
8093  1967 /*until_year*/,
8094  10 /*until_month*/,
8095  29 /*until_day*/,
8096  480 /*until_time_code (7200/15)*/,
8097  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8098  },
8099  // -6:00 US C%sT 1969 Apr 27 2:00
8100  {
8101  &kAtcAllZonePolicyUS /*zone_policy*/,
8102  "C%T" /*format*/,
8103  -1440 /*offset_code (-21600/15)*/,
8104  0 /*offset_remainder (-21600%15)*/,
8105  0 /*delta_minutes*/,
8106  1969 /*until_year*/,
8107  4 /*until_month*/,
8108  27 /*until_day*/,
8109  480 /*until_time_code (7200/15)*/,
8110  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8111  },
8112  // -5:00 US E%sT 1971
8113  {
8114  &kAtcAllZonePolicyUS /*zone_policy*/,
8115  "E%T" /*format*/,
8116  -1200 /*offset_code (-18000/15)*/,
8117  0 /*offset_remainder (-18000%15)*/,
8118  0 /*delta_minutes*/,
8119  1971 /*until_year*/,
8120  1 /*until_month*/,
8121  1 /*until_day*/,
8122  0 /*until_time_code (0/15)*/,
8123  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8124  },
8125  // -5:00 - EST 2006 Apr 2 2:00
8126  {
8127  NULL /*zone_policy*/,
8128  "EST" /*format*/,
8129  -1200 /*offset_code (-18000/15)*/,
8130  0 /*offset_remainder (-18000%15)*/,
8131  0 /*delta_minutes*/,
8132  2006 /*until_year*/,
8133  4 /*until_month*/,
8134  2 /*until_day*/,
8135  480 /*until_time_code (7200/15)*/,
8136  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8137  },
8138  // -6:00 US C%sT
8139  {
8140  &kAtcAllZonePolicyUS /*zone_policy*/,
8141  "C%T" /*format*/,
8142  -1440 /*offset_code (-21600/15)*/,
8143  0 /*offset_remainder (-21600%15)*/,
8144  0 /*delta_minutes*/,
8145  32767 /*until_year*/,
8146  1 /*until_month*/,
8147  1 /*until_day*/,
8148  0 /*until_time_code (0/15)*/,
8149  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8150  },
8151 
8152 };
8153 
8154 static const char kAtcZoneNameAmerica_Indiana_Tell_City[] = "America/Indiana/Tell_City";
8155 
8156 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Tell_City = {
8157  kAtcZoneNameAmerica_Indiana_Tell_City /*name*/,
8158  0x09263612 /*zone_id*/,
8159  &kAtcAllZoneContext /*zone_context*/,
8160  8 /*num_eras*/,
8161  kAtcZoneEraAmerica_Indiana_Tell_City /*eras*/,
8162  NULL /*target_info*/,
8163 };
8164 
8165 //---------------------------------------------------------------------------
8166 // Zone name: America/Indiana/Vevay
8167 // Zone Eras: 6
8168 //---------------------------------------------------------------------------
8169 
8170 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Vevay[] = {
8171  // -5:40:16 - LMT 1883 Nov 18 18:00u
8172  {
8173  NULL /*zone_policy*/,
8174  "LMT" /*format*/,
8175  -1362 /*offset_code (-20416/15)*/,
8176  14 /*offset_remainder (-20416%15)*/,
8177  0 /*delta_minutes*/,
8178  1883 /*until_year*/,
8179  11 /*until_month*/,
8180  18 /*until_day*/,
8181  4320 /*until_time_code (64800/15)*/,
8182  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
8183  },
8184  // -6:00 US C%sT 1954 Apr 25 2:00
8185  {
8186  &kAtcAllZonePolicyUS /*zone_policy*/,
8187  "C%T" /*format*/,
8188  -1440 /*offset_code (-21600/15)*/,
8189  0 /*offset_remainder (-21600%15)*/,
8190  0 /*delta_minutes*/,
8191  1954 /*until_year*/,
8192  4 /*until_month*/,
8193  25 /*until_day*/,
8194  480 /*until_time_code (7200/15)*/,
8195  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8196  },
8197  // -5:00 - EST 1969
8198  {
8199  NULL /*zone_policy*/,
8200  "EST" /*format*/,
8201  -1200 /*offset_code (-18000/15)*/,
8202  0 /*offset_remainder (-18000%15)*/,
8203  0 /*delta_minutes*/,
8204  1969 /*until_year*/,
8205  1 /*until_month*/,
8206  1 /*until_day*/,
8207  0 /*until_time_code (0/15)*/,
8208  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8209  },
8210  // -5:00 US E%sT 1973
8211  {
8212  &kAtcAllZonePolicyUS /*zone_policy*/,
8213  "E%T" /*format*/,
8214  -1200 /*offset_code (-18000/15)*/,
8215  0 /*offset_remainder (-18000%15)*/,
8216  0 /*delta_minutes*/,
8217  1973 /*until_year*/,
8218  1 /*until_month*/,
8219  1 /*until_day*/,
8220  0 /*until_time_code (0/15)*/,
8221  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8222  },
8223  // -5:00 - EST 2006
8224  {
8225  NULL /*zone_policy*/,
8226  "EST" /*format*/,
8227  -1200 /*offset_code (-18000/15)*/,
8228  0 /*offset_remainder (-18000%15)*/,
8229  0 /*delta_minutes*/,
8230  2006 /*until_year*/,
8231  1 /*until_month*/,
8232  1 /*until_day*/,
8233  0 /*until_time_code (0/15)*/,
8234  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8235  },
8236  // -5:00 US E%sT
8237  {
8238  &kAtcAllZonePolicyUS /*zone_policy*/,
8239  "E%T" /*format*/,
8240  -1200 /*offset_code (-18000/15)*/,
8241  0 /*offset_remainder (-18000%15)*/,
8242  0 /*delta_minutes*/,
8243  32767 /*until_year*/,
8244  1 /*until_month*/,
8245  1 /*until_day*/,
8246  0 /*until_time_code (0/15)*/,
8247  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8248  },
8249 
8250 };
8251 
8252 static const char kAtcZoneNameAmerica_Indiana_Vevay[] = "America/Indiana/Vevay";
8253 
8254 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Vevay = {
8255  kAtcZoneNameAmerica_Indiana_Vevay /*name*/,
8256  0x10aca054 /*zone_id*/,
8257  &kAtcAllZoneContext /*zone_context*/,
8258  6 /*num_eras*/,
8259  kAtcZoneEraAmerica_Indiana_Vevay /*eras*/,
8260  NULL /*target_info*/,
8261 };
8262 
8263 //---------------------------------------------------------------------------
8264 // Zone name: America/Indiana/Vincennes
8265 // Zone Eras: 8
8266 //---------------------------------------------------------------------------
8267 
8268 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Vincennes[] = {
8269  // -5:50:07 - LMT 1883 Nov 18 18:00u
8270  {
8271  NULL /*zone_policy*/,
8272  "LMT" /*format*/,
8273  -1401 /*offset_code (-21007/15)*/,
8274  8 /*offset_remainder (-21007%15)*/,
8275  0 /*delta_minutes*/,
8276  1883 /*until_year*/,
8277  11 /*until_month*/,
8278  18 /*until_day*/,
8279  4320 /*until_time_code (64800/15)*/,
8280  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
8281  },
8282  // -6:00 US C%sT 1946
8283  {
8284  &kAtcAllZonePolicyUS /*zone_policy*/,
8285  "C%T" /*format*/,
8286  -1440 /*offset_code (-21600/15)*/,
8287  0 /*offset_remainder (-21600%15)*/,
8288  0 /*delta_minutes*/,
8289  1946 /*until_year*/,
8290  1 /*until_month*/,
8291  1 /*until_day*/,
8292  0 /*until_time_code (0/15)*/,
8293  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8294  },
8295  // -6:00 Vincennes C%sT 1964 Apr 26 2:00
8296  {
8297  &kAtcAllZonePolicyVincennes /*zone_policy*/,
8298  "C%T" /*format*/,
8299  -1440 /*offset_code (-21600/15)*/,
8300  0 /*offset_remainder (-21600%15)*/,
8301  0 /*delta_minutes*/,
8302  1964 /*until_year*/,
8303  4 /*until_month*/,
8304  26 /*until_day*/,
8305  480 /*until_time_code (7200/15)*/,
8306  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8307  },
8308  // -5:00 - EST 1969
8309  {
8310  NULL /*zone_policy*/,
8311  "EST" /*format*/,
8312  -1200 /*offset_code (-18000/15)*/,
8313  0 /*offset_remainder (-18000%15)*/,
8314  0 /*delta_minutes*/,
8315  1969 /*until_year*/,
8316  1 /*until_month*/,
8317  1 /*until_day*/,
8318  0 /*until_time_code (0/15)*/,
8319  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8320  },
8321  // -5:00 US E%sT 1971
8322  {
8323  &kAtcAllZonePolicyUS /*zone_policy*/,
8324  "E%T" /*format*/,
8325  -1200 /*offset_code (-18000/15)*/,
8326  0 /*offset_remainder (-18000%15)*/,
8327  0 /*delta_minutes*/,
8328  1971 /*until_year*/,
8329  1 /*until_month*/,
8330  1 /*until_day*/,
8331  0 /*until_time_code (0/15)*/,
8332  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8333  },
8334  // -5:00 - EST 2006 Apr 2 2:00
8335  {
8336  NULL /*zone_policy*/,
8337  "EST" /*format*/,
8338  -1200 /*offset_code (-18000/15)*/,
8339  0 /*offset_remainder (-18000%15)*/,
8340  0 /*delta_minutes*/,
8341  2006 /*until_year*/,
8342  4 /*until_month*/,
8343  2 /*until_day*/,
8344  480 /*until_time_code (7200/15)*/,
8345  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8346  },
8347  // -6:00 US C%sT 2007 Nov 4 2:00
8348  {
8349  &kAtcAllZonePolicyUS /*zone_policy*/,
8350  "C%T" /*format*/,
8351  -1440 /*offset_code (-21600/15)*/,
8352  0 /*offset_remainder (-21600%15)*/,
8353  0 /*delta_minutes*/,
8354  2007 /*until_year*/,
8355  11 /*until_month*/,
8356  4 /*until_day*/,
8357  480 /*until_time_code (7200/15)*/,
8358  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8359  },
8360  // -5:00 US E%sT
8361  {
8362  &kAtcAllZonePolicyUS /*zone_policy*/,
8363  "E%T" /*format*/,
8364  -1200 /*offset_code (-18000/15)*/,
8365  0 /*offset_remainder (-18000%15)*/,
8366  0 /*delta_minutes*/,
8367  32767 /*until_year*/,
8368  1 /*until_month*/,
8369  1 /*until_day*/,
8370  0 /*until_time_code (0/15)*/,
8371  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8372  },
8373 
8374 };
8375 
8376 static const char kAtcZoneNameAmerica_Indiana_Vincennes[] = "America/Indiana/Vincennes";
8377 
8378 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Vincennes = {
8379  kAtcZoneNameAmerica_Indiana_Vincennes /*name*/,
8380  0x28a0b212 /*zone_id*/,
8381  &kAtcAllZoneContext /*zone_context*/,
8382  8 /*num_eras*/,
8383  kAtcZoneEraAmerica_Indiana_Vincennes /*eras*/,
8384  NULL /*target_info*/,
8385 };
8386 
8387 //---------------------------------------------------------------------------
8388 // Zone name: America/Indiana/Winamac
8389 // Zone Eras: 8
8390 //---------------------------------------------------------------------------
8391 
8392 static const AtcZoneEra kAtcZoneEraAmerica_Indiana_Winamac[] = {
8393  // -5:46:25 - LMT 1883 Nov 18 18:00u
8394  {
8395  NULL /*zone_policy*/,
8396  "LMT" /*format*/,
8397  -1386 /*offset_code (-20785/15)*/,
8398  5 /*offset_remainder (-20785%15)*/,
8399  0 /*delta_minutes*/,
8400  1883 /*until_year*/,
8401  11 /*until_month*/,
8402  18 /*until_day*/,
8403  4320 /*until_time_code (64800/15)*/,
8404  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
8405  },
8406  // -6:00 US C%sT 1946
8407  {
8408  &kAtcAllZonePolicyUS /*zone_policy*/,
8409  "C%T" /*format*/,
8410  -1440 /*offset_code (-21600/15)*/,
8411  0 /*offset_remainder (-21600%15)*/,
8412  0 /*delta_minutes*/,
8413  1946 /*until_year*/,
8414  1 /*until_month*/,
8415  1 /*until_day*/,
8416  0 /*until_time_code (0/15)*/,
8417  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8418  },
8419  // -6:00 Pulaski C%sT 1961 Apr 30 2:00
8420  {
8421  &kAtcAllZonePolicyPulaski /*zone_policy*/,
8422  "C%T" /*format*/,
8423  -1440 /*offset_code (-21600/15)*/,
8424  0 /*offset_remainder (-21600%15)*/,
8425  0 /*delta_minutes*/,
8426  1961 /*until_year*/,
8427  4 /*until_month*/,
8428  30 /*until_day*/,
8429  480 /*until_time_code (7200/15)*/,
8430  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8431  },
8432  // -5:00 - EST 1969
8433  {
8434  NULL /*zone_policy*/,
8435  "EST" /*format*/,
8436  -1200 /*offset_code (-18000/15)*/,
8437  0 /*offset_remainder (-18000%15)*/,
8438  0 /*delta_minutes*/,
8439  1969 /*until_year*/,
8440  1 /*until_month*/,
8441  1 /*until_day*/,
8442  0 /*until_time_code (0/15)*/,
8443  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8444  },
8445  // -5:00 US E%sT 1971
8446  {
8447  &kAtcAllZonePolicyUS /*zone_policy*/,
8448  "E%T" /*format*/,
8449  -1200 /*offset_code (-18000/15)*/,
8450  0 /*offset_remainder (-18000%15)*/,
8451  0 /*delta_minutes*/,
8452  1971 /*until_year*/,
8453  1 /*until_month*/,
8454  1 /*until_day*/,
8455  0 /*until_time_code (0/15)*/,
8456  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8457  },
8458  // -5:00 - EST 2006 Apr 2 2:00
8459  {
8460  NULL /*zone_policy*/,
8461  "EST" /*format*/,
8462  -1200 /*offset_code (-18000/15)*/,
8463  0 /*offset_remainder (-18000%15)*/,
8464  0 /*delta_minutes*/,
8465  2006 /*until_year*/,
8466  4 /*until_month*/,
8467  2 /*until_day*/,
8468  480 /*until_time_code (7200/15)*/,
8469  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8470  },
8471  // -6:00 US C%sT 2007 Mar 11 2:00
8472  {
8473  &kAtcAllZonePolicyUS /*zone_policy*/,
8474  "C%T" /*format*/,
8475  -1440 /*offset_code (-21600/15)*/,
8476  0 /*offset_remainder (-21600%15)*/,
8477  0 /*delta_minutes*/,
8478  2007 /*until_year*/,
8479  3 /*until_month*/,
8480  11 /*until_day*/,
8481  480 /*until_time_code (7200/15)*/,
8482  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8483  },
8484  // -5:00 US E%sT
8485  {
8486  &kAtcAllZonePolicyUS /*zone_policy*/,
8487  "E%T" /*format*/,
8488  -1200 /*offset_code (-18000/15)*/,
8489  0 /*offset_remainder (-18000%15)*/,
8490  0 /*delta_minutes*/,
8491  32767 /*until_year*/,
8492  1 /*until_month*/,
8493  1 /*until_day*/,
8494  0 /*until_time_code (0/15)*/,
8495  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8496  },
8497 
8498 };
8499 
8500 static const char kAtcZoneNameAmerica_Indiana_Winamac[] = "America/Indiana/Winamac";
8501 
8502 const AtcZoneInfo kAtcAllZoneAmerica_Indiana_Winamac = {
8503  kAtcZoneNameAmerica_Indiana_Winamac /*name*/,
8504  0x4413fa69 /*zone_id*/,
8505  &kAtcAllZoneContext /*zone_context*/,
8506  8 /*num_eras*/,
8507  kAtcZoneEraAmerica_Indiana_Winamac /*eras*/,
8508  NULL /*target_info*/,
8509 };
8510 
8511 //---------------------------------------------------------------------------
8512 // Zone name: America/Inuvik
8513 // Zone Eras: 4
8514 //---------------------------------------------------------------------------
8515 
8516 static const AtcZoneEra kAtcZoneEraAmerica_Inuvik[] = {
8517  // 0 - -00 1953
8518  {
8519  NULL /*zone_policy*/,
8520  "-00" /*format*/,
8521  0 /*offset_code (0/15)*/,
8522  0 /*offset_remainder (0%15)*/,
8523  0 /*delta_minutes*/,
8524  1953 /*until_year*/,
8525  1 /*until_month*/,
8526  1 /*until_day*/,
8527  0 /*until_time_code (0/15)*/,
8528  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8529  },
8530  // -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
8531  {
8532  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
8533  "P%T" /*format*/,
8534  -1920 /*offset_code (-28800/15)*/,
8535  0 /*offset_remainder (-28800%15)*/,
8536  0 /*delta_minutes*/,
8537  1979 /*until_year*/,
8538  4 /*until_month*/,
8539  29 /*until_day*/,
8540  480 /*until_time_code (7200/15)*/,
8541  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8542  },
8543  // -7:00 NT_YK M%sT 1980
8544  {
8545  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
8546  "M%T" /*format*/,
8547  -1680 /*offset_code (-25200/15)*/,
8548  0 /*offset_remainder (-25200%15)*/,
8549  0 /*delta_minutes*/,
8550  1980 /*until_year*/,
8551  1 /*until_month*/,
8552  1 /*until_day*/,
8553  0 /*until_time_code (0/15)*/,
8554  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8555  },
8556  // -7:00 Canada M%sT
8557  {
8558  &kAtcAllZonePolicyCanada /*zone_policy*/,
8559  "M%T" /*format*/,
8560  -1680 /*offset_code (-25200/15)*/,
8561  0 /*offset_remainder (-25200%15)*/,
8562  0 /*delta_minutes*/,
8563  32767 /*until_year*/,
8564  1 /*until_month*/,
8565  1 /*until_day*/,
8566  0 /*until_time_code (0/15)*/,
8567  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8568  },
8569 
8570 };
8571 
8572 static const char kAtcZoneNameAmerica_Inuvik[] = "America/Inuvik";
8573 
8574 const AtcZoneInfo kAtcAllZoneAmerica_Inuvik = {
8575  kAtcZoneNameAmerica_Inuvik /*name*/,
8576  0xa42189fc /*zone_id*/,
8577  &kAtcAllZoneContext /*zone_context*/,
8578  4 /*num_eras*/,
8579  kAtcZoneEraAmerica_Inuvik /*eras*/,
8580  NULL /*target_info*/,
8581 };
8582 
8583 //---------------------------------------------------------------------------
8584 // Zone name: America/Iqaluit
8585 // Zone Eras: 4
8586 //---------------------------------------------------------------------------
8587 
8588 static const AtcZoneEra kAtcZoneEraAmerica_Iqaluit[] = {
8589  // 0 - -00 1942 Aug
8590  {
8591  NULL /*zone_policy*/,
8592  "-00" /*format*/,
8593  0 /*offset_code (0/15)*/,
8594  0 /*offset_remainder (0%15)*/,
8595  0 /*delta_minutes*/,
8596  1942 /*until_year*/,
8597  8 /*until_month*/,
8598  1 /*until_day*/,
8599  0 /*until_time_code (0/15)*/,
8600  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8601  },
8602  // -5:00 NT_YK E%sT 1999 Oct 31 2:00
8603  {
8604  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
8605  "E%T" /*format*/,
8606  -1200 /*offset_code (-18000/15)*/,
8607  0 /*offset_remainder (-18000%15)*/,
8608  0 /*delta_minutes*/,
8609  1999 /*until_year*/,
8610  10 /*until_month*/,
8611  31 /*until_day*/,
8612  480 /*until_time_code (7200/15)*/,
8613  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8614  },
8615  // -6:00 Canada C%sT 2000 Oct 29 2:00
8616  {
8617  &kAtcAllZonePolicyCanada /*zone_policy*/,
8618  "C%T" /*format*/,
8619  -1440 /*offset_code (-21600/15)*/,
8620  0 /*offset_remainder (-21600%15)*/,
8621  0 /*delta_minutes*/,
8622  2000 /*until_year*/,
8623  10 /*until_month*/,
8624  29 /*until_day*/,
8625  480 /*until_time_code (7200/15)*/,
8626  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8627  },
8628  // -5:00 Canada E%sT
8629  {
8630  &kAtcAllZonePolicyCanada /*zone_policy*/,
8631  "E%T" /*format*/,
8632  -1200 /*offset_code (-18000/15)*/,
8633  0 /*offset_remainder (-18000%15)*/,
8634  0 /*delta_minutes*/,
8635  32767 /*until_year*/,
8636  1 /*until_month*/,
8637  1 /*until_day*/,
8638  0 /*until_time_code (0/15)*/,
8639  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8640  },
8641 
8642 };
8643 
8644 static const char kAtcZoneNameAmerica_Iqaluit[] = "America/Iqaluit";
8645 
8646 const AtcZoneInfo kAtcAllZoneAmerica_Iqaluit = {
8647  kAtcZoneNameAmerica_Iqaluit /*name*/,
8648  0x2de310bf /*zone_id*/,
8649  &kAtcAllZoneContext /*zone_context*/,
8650  4 /*num_eras*/,
8651  kAtcZoneEraAmerica_Iqaluit /*eras*/,
8652  NULL /*target_info*/,
8653 };
8654 
8655 //---------------------------------------------------------------------------
8656 // Zone name: America/Jamaica
8657 // Zone Eras: 5
8658 //---------------------------------------------------------------------------
8659 
8660 static const AtcZoneEra kAtcZoneEraAmerica_Jamaica[] = {
8661  // -5:07:10 - LMT 1890
8662  {
8663  NULL /*zone_policy*/,
8664  "LMT" /*format*/,
8665  -1229 /*offset_code (-18430/15)*/,
8666  5 /*offset_remainder (-18430%15)*/,
8667  0 /*delta_minutes*/,
8668  1890 /*until_year*/,
8669  1 /*until_month*/,
8670  1 /*until_day*/,
8671  0 /*until_time_code (0/15)*/,
8672  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8673  },
8674  // -5:07:10 - KMT 1912 Feb
8675  {
8676  NULL /*zone_policy*/,
8677  "KMT" /*format*/,
8678  -1229 /*offset_code (-18430/15)*/,
8679  5 /*offset_remainder (-18430%15)*/,
8680  0 /*delta_minutes*/,
8681  1912 /*until_year*/,
8682  2 /*until_month*/,
8683  1 /*until_day*/,
8684  0 /*until_time_code (0/15)*/,
8685  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8686  },
8687  // -5:00 - EST 1974
8688  {
8689  NULL /*zone_policy*/,
8690  "EST" /*format*/,
8691  -1200 /*offset_code (-18000/15)*/,
8692  0 /*offset_remainder (-18000%15)*/,
8693  0 /*delta_minutes*/,
8694  1974 /*until_year*/,
8695  1 /*until_month*/,
8696  1 /*until_day*/,
8697  0 /*until_time_code (0/15)*/,
8698  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8699  },
8700  // -5:00 US E%sT 1984
8701  {
8702  &kAtcAllZonePolicyUS /*zone_policy*/,
8703  "E%T" /*format*/,
8704  -1200 /*offset_code (-18000/15)*/,
8705  0 /*offset_remainder (-18000%15)*/,
8706  0 /*delta_minutes*/,
8707  1984 /*until_year*/,
8708  1 /*until_month*/,
8709  1 /*until_day*/,
8710  0 /*until_time_code (0/15)*/,
8711  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8712  },
8713  // -5:00 - EST
8714  {
8715  NULL /*zone_policy*/,
8716  "EST" /*format*/,
8717  -1200 /*offset_code (-18000/15)*/,
8718  0 /*offset_remainder (-18000%15)*/,
8719  0 /*delta_minutes*/,
8720  32767 /*until_year*/,
8721  1 /*until_month*/,
8722  1 /*until_day*/,
8723  0 /*until_time_code (0/15)*/,
8724  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8725  },
8726 
8727 };
8728 
8729 static const char kAtcZoneNameAmerica_Jamaica[] = "America/Jamaica";
8730 
8731 const AtcZoneInfo kAtcAllZoneAmerica_Jamaica = {
8732  kAtcZoneNameAmerica_Jamaica /*name*/,
8733  0x565dad6c /*zone_id*/,
8734  &kAtcAllZoneContext /*zone_context*/,
8735  5 /*num_eras*/,
8736  kAtcZoneEraAmerica_Jamaica /*eras*/,
8737  NULL /*target_info*/,
8738 };
8739 
8740 //---------------------------------------------------------------------------
8741 // Zone name: America/Juneau
8742 // Zone Eras: 10
8743 //---------------------------------------------------------------------------
8744 
8745 static const AtcZoneEra kAtcZoneEraAmerica_Juneau[] = {
8746  // 15:02:19 - LMT 1867 Oct 19 15:33:32
8747  {
8748  NULL /*zone_policy*/,
8749  "LMT" /*format*/,
8750  3609 /*offset_code (54139/15)*/,
8751  4 /*offset_remainder (54139%15)*/,
8752  0 /*delta_minutes*/,
8753  1867 /*until_year*/,
8754  10 /*until_month*/,
8755  19 /*until_day*/,
8756  3734 /*until_time_code (56012/15)*/,
8757  2 /*until_time_modifier (kAtcSuffixW + seconds=2)*/,
8758  },
8759  // -8:57:41 - LMT 1900 Aug 20 12:00
8760  {
8761  NULL /*zone_policy*/,
8762  "LMT" /*format*/,
8763  -2151 /*offset_code (-32261/15)*/,
8764  4 /*offset_remainder (-32261%15)*/,
8765  0 /*delta_minutes*/,
8766  1900 /*until_year*/,
8767  8 /*until_month*/,
8768  20 /*until_day*/,
8769  2880 /*until_time_code (43200/15)*/,
8770  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8771  },
8772  // -8:00 - PST 1942
8773  {
8774  NULL /*zone_policy*/,
8775  "PST" /*format*/,
8776  -1920 /*offset_code (-28800/15)*/,
8777  0 /*offset_remainder (-28800%15)*/,
8778  0 /*delta_minutes*/,
8779  1942 /*until_year*/,
8780  1 /*until_month*/,
8781  1 /*until_day*/,
8782  0 /*until_time_code (0/15)*/,
8783  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8784  },
8785  // -8:00 US P%sT 1946
8786  {
8787  &kAtcAllZonePolicyUS /*zone_policy*/,
8788  "P%T" /*format*/,
8789  -1920 /*offset_code (-28800/15)*/,
8790  0 /*offset_remainder (-28800%15)*/,
8791  0 /*delta_minutes*/,
8792  1946 /*until_year*/,
8793  1 /*until_month*/,
8794  1 /*until_day*/,
8795  0 /*until_time_code (0/15)*/,
8796  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8797  },
8798  // -8:00 - PST 1969
8799  {
8800  NULL /*zone_policy*/,
8801  "PST" /*format*/,
8802  -1920 /*offset_code (-28800/15)*/,
8803  0 /*offset_remainder (-28800%15)*/,
8804  0 /*delta_minutes*/,
8805  1969 /*until_year*/,
8806  1 /*until_month*/,
8807  1 /*until_day*/,
8808  0 /*until_time_code (0/15)*/,
8809  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8810  },
8811  // -8:00 US P%sT 1980 Apr 27 2:00
8812  {
8813  &kAtcAllZonePolicyUS /*zone_policy*/,
8814  "P%T" /*format*/,
8815  -1920 /*offset_code (-28800/15)*/,
8816  0 /*offset_remainder (-28800%15)*/,
8817  0 /*delta_minutes*/,
8818  1980 /*until_year*/,
8819  4 /*until_month*/,
8820  27 /*until_day*/,
8821  480 /*until_time_code (7200/15)*/,
8822  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8823  },
8824  // -9:00 US Y%sT 1980 Oct 26 2:00
8825  {
8826  &kAtcAllZonePolicyUS /*zone_policy*/,
8827  "Y%T" /*format*/,
8828  -2160 /*offset_code (-32400/15)*/,
8829  0 /*offset_remainder (-32400%15)*/,
8830  0 /*delta_minutes*/,
8831  1980 /*until_year*/,
8832  10 /*until_month*/,
8833  26 /*until_day*/,
8834  480 /*until_time_code (7200/15)*/,
8835  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8836  },
8837  // -8:00 US P%sT 1983 Oct 30 2:00
8838  {
8839  &kAtcAllZonePolicyUS /*zone_policy*/,
8840  "P%T" /*format*/,
8841  -1920 /*offset_code (-28800/15)*/,
8842  0 /*offset_remainder (-28800%15)*/,
8843  0 /*delta_minutes*/,
8844  1983 /*until_year*/,
8845  10 /*until_month*/,
8846  30 /*until_day*/,
8847  480 /*until_time_code (7200/15)*/,
8848  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8849  },
8850  // -9:00 US Y%sT 1983 Nov 30
8851  {
8852  &kAtcAllZonePolicyUS /*zone_policy*/,
8853  "Y%T" /*format*/,
8854  -2160 /*offset_code (-32400/15)*/,
8855  0 /*offset_remainder (-32400%15)*/,
8856  0 /*delta_minutes*/,
8857  1983 /*until_year*/,
8858  11 /*until_month*/,
8859  30 /*until_day*/,
8860  0 /*until_time_code (0/15)*/,
8861  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8862  },
8863  // -9:00 US AK%sT
8864  {
8865  &kAtcAllZonePolicyUS /*zone_policy*/,
8866  "AK%T" /*format*/,
8867  -2160 /*offset_code (-32400/15)*/,
8868  0 /*offset_remainder (-32400%15)*/,
8869  0 /*delta_minutes*/,
8870  32767 /*until_year*/,
8871  1 /*until_month*/,
8872  1 /*until_day*/,
8873  0 /*until_time_code (0/15)*/,
8874  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8875  },
8876 
8877 };
8878 
8879 static const char kAtcZoneNameAmerica_Juneau[] = "America/Juneau";
8880 
8881 const AtcZoneInfo kAtcAllZoneAmerica_Juneau = {
8882  kAtcZoneNameAmerica_Juneau /*name*/,
8883  0xa6f13e2e /*zone_id*/,
8884  &kAtcAllZoneContext /*zone_context*/,
8885  10 /*num_eras*/,
8886  kAtcZoneEraAmerica_Juneau /*eras*/,
8887  NULL /*target_info*/,
8888 };
8889 
8890 //---------------------------------------------------------------------------
8891 // Zone name: America/Kentucky/Louisville
8892 // Zone Eras: 9
8893 //---------------------------------------------------------------------------
8894 
8895 static const AtcZoneEra kAtcZoneEraAmerica_Kentucky_Louisville[] = {
8896  // -5:43:02 - LMT 1883 Nov 18 18:00u
8897  {
8898  NULL /*zone_policy*/,
8899  "LMT" /*format*/,
8900  -1373 /*offset_code (-20582/15)*/,
8901  13 /*offset_remainder (-20582%15)*/,
8902  0 /*delta_minutes*/,
8903  1883 /*until_year*/,
8904  11 /*until_month*/,
8905  18 /*until_day*/,
8906  4320 /*until_time_code (64800/15)*/,
8907  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
8908  },
8909  // -6:00 US C%sT 1921
8910  {
8911  &kAtcAllZonePolicyUS /*zone_policy*/,
8912  "C%T" /*format*/,
8913  -1440 /*offset_code (-21600/15)*/,
8914  0 /*offset_remainder (-21600%15)*/,
8915  0 /*delta_minutes*/,
8916  1921 /*until_year*/,
8917  1 /*until_month*/,
8918  1 /*until_day*/,
8919  0 /*until_time_code (0/15)*/,
8920  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8921  },
8922  // -6:00 Louisville C%sT 1942
8923  {
8924  &kAtcAllZonePolicyLouisville /*zone_policy*/,
8925  "C%T" /*format*/,
8926  -1440 /*offset_code (-21600/15)*/,
8927  0 /*offset_remainder (-21600%15)*/,
8928  0 /*delta_minutes*/,
8929  1942 /*until_year*/,
8930  1 /*until_month*/,
8931  1 /*until_day*/,
8932  0 /*until_time_code (0/15)*/,
8933  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8934  },
8935  // -6:00 US C%sT 1946
8936  {
8937  &kAtcAllZonePolicyUS /*zone_policy*/,
8938  "C%T" /*format*/,
8939  -1440 /*offset_code (-21600/15)*/,
8940  0 /*offset_remainder (-21600%15)*/,
8941  0 /*delta_minutes*/,
8942  1946 /*until_year*/,
8943  1 /*until_month*/,
8944  1 /*until_day*/,
8945  0 /*until_time_code (0/15)*/,
8946  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8947  },
8948  // -6:00 Louisville C%sT 1961 Jul 23 2:00
8949  {
8950  &kAtcAllZonePolicyLouisville /*zone_policy*/,
8951  "C%T" /*format*/,
8952  -1440 /*offset_code (-21600/15)*/,
8953  0 /*offset_remainder (-21600%15)*/,
8954  0 /*delta_minutes*/,
8955  1961 /*until_year*/,
8956  7 /*until_month*/,
8957  23 /*until_day*/,
8958  480 /*until_time_code (7200/15)*/,
8959  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8960  },
8961  // -5:00 - EST 1968
8962  {
8963  NULL /*zone_policy*/,
8964  "EST" /*format*/,
8965  -1200 /*offset_code (-18000/15)*/,
8966  0 /*offset_remainder (-18000%15)*/,
8967  0 /*delta_minutes*/,
8968  1968 /*until_year*/,
8969  1 /*until_month*/,
8970  1 /*until_day*/,
8971  0 /*until_time_code (0/15)*/,
8972  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8973  },
8974  // -5:00 US E%sT 1974 Jan 6 2:00
8975  {
8976  &kAtcAllZonePolicyUS /*zone_policy*/,
8977  "E%T" /*format*/,
8978  -1200 /*offset_code (-18000/15)*/,
8979  0 /*offset_remainder (-18000%15)*/,
8980  0 /*delta_minutes*/,
8981  1974 /*until_year*/,
8982  1 /*until_month*/,
8983  6 /*until_day*/,
8984  480 /*until_time_code (7200/15)*/,
8985  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8986  },
8987  // -6:00 1:00 CDT 1974 Oct 27 2:00
8988  {
8989  NULL /*zone_policy*/,
8990  "CDT" /*format*/,
8991  -1440 /*offset_code (-21600/15)*/,
8992  0 /*offset_remainder (-21600%15)*/,
8993  60 /*delta_minutes*/,
8994  1974 /*until_year*/,
8995  10 /*until_month*/,
8996  27 /*until_day*/,
8997  480 /*until_time_code (7200/15)*/,
8998  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
8999  },
9000  // -5:00 US E%sT
9001  {
9002  &kAtcAllZonePolicyUS /*zone_policy*/,
9003  "E%T" /*format*/,
9004  -1200 /*offset_code (-18000/15)*/,
9005  0 /*offset_remainder (-18000%15)*/,
9006  0 /*delta_minutes*/,
9007  32767 /*until_year*/,
9008  1 /*until_month*/,
9009  1 /*until_day*/,
9010  0 /*until_time_code (0/15)*/,
9011  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9012  },
9013 
9014 };
9015 
9016 static const char kAtcZoneNameAmerica_Kentucky_Louisville[] = "America/Kentucky/Louisville";
9017 
9018 const AtcZoneInfo kAtcAllZoneAmerica_Kentucky_Louisville = {
9019  kAtcZoneNameAmerica_Kentucky_Louisville /*name*/,
9020  0x1a21024b /*zone_id*/,
9021  &kAtcAllZoneContext /*zone_context*/,
9022  9 /*num_eras*/,
9023  kAtcZoneEraAmerica_Kentucky_Louisville /*eras*/,
9024  NULL /*target_info*/,
9025 };
9026 
9027 //---------------------------------------------------------------------------
9028 // Zone name: America/Kentucky/Monticello
9029 // Zone Eras: 5
9030 //---------------------------------------------------------------------------
9031 
9032 static const AtcZoneEra kAtcZoneEraAmerica_Kentucky_Monticello[] = {
9033  // -5:39:24 - LMT 1883 Nov 18 18:00u
9034  {
9035  NULL /*zone_policy*/,
9036  "LMT" /*format*/,
9037  -1358 /*offset_code (-20364/15)*/,
9038  6 /*offset_remainder (-20364%15)*/,
9039  0 /*delta_minutes*/,
9040  1883 /*until_year*/,
9041  11 /*until_month*/,
9042  18 /*until_day*/,
9043  4320 /*until_time_code (64800/15)*/,
9044  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
9045  },
9046  // -6:00 US C%sT 1946
9047  {
9048  &kAtcAllZonePolicyUS /*zone_policy*/,
9049  "C%T" /*format*/,
9050  -1440 /*offset_code (-21600/15)*/,
9051  0 /*offset_remainder (-21600%15)*/,
9052  0 /*delta_minutes*/,
9053  1946 /*until_year*/,
9054  1 /*until_month*/,
9055  1 /*until_day*/,
9056  0 /*until_time_code (0/15)*/,
9057  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9058  },
9059  // -6:00 - CST 1968
9060  {
9061  NULL /*zone_policy*/,
9062  "CST" /*format*/,
9063  -1440 /*offset_code (-21600/15)*/,
9064  0 /*offset_remainder (-21600%15)*/,
9065  0 /*delta_minutes*/,
9066  1968 /*until_year*/,
9067  1 /*until_month*/,
9068  1 /*until_day*/,
9069  0 /*until_time_code (0/15)*/,
9070  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9071  },
9072  // -6:00 US C%sT 2000 Oct 29 2:00
9073  {
9074  &kAtcAllZonePolicyUS /*zone_policy*/,
9075  "C%T" /*format*/,
9076  -1440 /*offset_code (-21600/15)*/,
9077  0 /*offset_remainder (-21600%15)*/,
9078  0 /*delta_minutes*/,
9079  2000 /*until_year*/,
9080  10 /*until_month*/,
9081  29 /*until_day*/,
9082  480 /*until_time_code (7200/15)*/,
9083  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9084  },
9085  // -5:00 US E%sT
9086  {
9087  &kAtcAllZonePolicyUS /*zone_policy*/,
9088  "E%T" /*format*/,
9089  -1200 /*offset_code (-18000/15)*/,
9090  0 /*offset_remainder (-18000%15)*/,
9091  0 /*delta_minutes*/,
9092  32767 /*until_year*/,
9093  1 /*until_month*/,
9094  1 /*until_day*/,
9095  0 /*until_time_code (0/15)*/,
9096  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9097  },
9098 
9099 };
9100 
9101 static const char kAtcZoneNameAmerica_Kentucky_Monticello[] = "America/Kentucky/Monticello";
9102 
9103 const AtcZoneInfo kAtcAllZoneAmerica_Kentucky_Monticello = {
9104  kAtcZoneNameAmerica_Kentucky_Monticello /*name*/,
9105  0xde71c439 /*zone_id*/,
9106  &kAtcAllZoneContext /*zone_context*/,
9107  5 /*num_eras*/,
9108  kAtcZoneEraAmerica_Kentucky_Monticello /*eras*/,
9109  NULL /*target_info*/,
9110 };
9111 
9112 //---------------------------------------------------------------------------
9113 // Zone name: America/La_Paz
9114 // Zone Eras: 4
9115 //---------------------------------------------------------------------------
9116 
9117 static const AtcZoneEra kAtcZoneEraAmerica_La_Paz[] = {
9118  // -4:32:36 - LMT 1890
9119  {
9120  NULL /*zone_policy*/,
9121  "LMT" /*format*/,
9122  -1091 /*offset_code (-16356/15)*/,
9123  9 /*offset_remainder (-16356%15)*/,
9124  0 /*delta_minutes*/,
9125  1890 /*until_year*/,
9126  1 /*until_month*/,
9127  1 /*until_day*/,
9128  0 /*until_time_code (0/15)*/,
9129  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9130  },
9131  // -4:32:36 - CMT 1931 Oct 15
9132  {
9133  NULL /*zone_policy*/,
9134  "CMT" /*format*/,
9135  -1091 /*offset_code (-16356/15)*/,
9136  9 /*offset_remainder (-16356%15)*/,
9137  0 /*delta_minutes*/,
9138  1931 /*until_year*/,
9139  10 /*until_month*/,
9140  15 /*until_day*/,
9141  0 /*until_time_code (0/15)*/,
9142  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9143  },
9144  // -4:32:36 1:00 BST 1932 Mar 21
9145  {
9146  NULL /*zone_policy*/,
9147  "BST" /*format*/,
9148  -1091 /*offset_code (-16356/15)*/,
9149  9 /*offset_remainder (-16356%15)*/,
9150  60 /*delta_minutes*/,
9151  1932 /*until_year*/,
9152  3 /*until_month*/,
9153  21 /*until_day*/,
9154  0 /*until_time_code (0/15)*/,
9155  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9156  },
9157  // -4:00 - -04
9158  {
9159  NULL /*zone_policy*/,
9160  "-04" /*format*/,
9161  -960 /*offset_code (-14400/15)*/,
9162  0 /*offset_remainder (-14400%15)*/,
9163  0 /*delta_minutes*/,
9164  32767 /*until_year*/,
9165  1 /*until_month*/,
9166  1 /*until_day*/,
9167  0 /*until_time_code (0/15)*/,
9168  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9169  },
9170 
9171 };
9172 
9173 static const char kAtcZoneNameAmerica_La_Paz[] = "America/La_Paz";
9174 
9175 const AtcZoneInfo kAtcAllZoneAmerica_La_Paz = {
9176  kAtcZoneNameAmerica_La_Paz /*name*/,
9177  0xaa29125d /*zone_id*/,
9178  &kAtcAllZoneContext /*zone_context*/,
9179  4 /*num_eras*/,
9180  kAtcZoneEraAmerica_La_Paz /*eras*/,
9181  NULL /*target_info*/,
9182 };
9183 
9184 //---------------------------------------------------------------------------
9185 // Zone name: America/Lima
9186 // Zone Eras: 3
9187 //---------------------------------------------------------------------------
9188 
9189 static const AtcZoneEra kAtcZoneEraAmerica_Lima[] = {
9190  // -5:08:12 - LMT 1890
9191  {
9192  NULL /*zone_policy*/,
9193  "LMT" /*format*/,
9194  -1233 /*offset_code (-18492/15)*/,
9195  3 /*offset_remainder (-18492%15)*/,
9196  0 /*delta_minutes*/,
9197  1890 /*until_year*/,
9198  1 /*until_month*/,
9199  1 /*until_day*/,
9200  0 /*until_time_code (0/15)*/,
9201  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9202  },
9203  // -5:08:36 - LMT 1908 Jul 28
9204  {
9205  NULL /*zone_policy*/,
9206  "LMT" /*format*/,
9207  -1235 /*offset_code (-18516/15)*/,
9208  9 /*offset_remainder (-18516%15)*/,
9209  0 /*delta_minutes*/,
9210  1908 /*until_year*/,
9211  7 /*until_month*/,
9212  28 /*until_day*/,
9213  0 /*until_time_code (0/15)*/,
9214  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9215  },
9216  // -5:00 Peru -05/-04
9217  {
9218  &kAtcAllZonePolicyPeru /*zone_policy*/,
9219  "-05/-04" /*format*/,
9220  -1200 /*offset_code (-18000/15)*/,
9221  0 /*offset_remainder (-18000%15)*/,
9222  0 /*delta_minutes*/,
9223  32767 /*until_year*/,
9224  1 /*until_month*/,
9225  1 /*until_day*/,
9226  0 /*until_time_code (0/15)*/,
9227  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9228  },
9229 
9230 };
9231 
9232 static const char kAtcZoneNameAmerica_Lima[] = "America/Lima";
9233 
9234 const AtcZoneInfo kAtcAllZoneAmerica_Lima = {
9235  kAtcZoneNameAmerica_Lima /*name*/,
9236  0x980468c9 /*zone_id*/,
9237  &kAtcAllZoneContext /*zone_context*/,
9238  3 /*num_eras*/,
9239  kAtcZoneEraAmerica_Lima /*eras*/,
9240  NULL /*target_info*/,
9241 };
9242 
9243 //---------------------------------------------------------------------------
9244 // Zone name: America/Los_Angeles
9245 // Zone Eras: 4
9246 //---------------------------------------------------------------------------
9247 
9248 static const AtcZoneEra kAtcZoneEraAmerica_Los_Angeles[] = {
9249  // -7:52:58 - LMT 1883 Nov 18 20:00u
9250  {
9251  NULL /*zone_policy*/,
9252  "LMT" /*format*/,
9253  -1892 /*offset_code (-28378/15)*/,
9254  2 /*offset_remainder (-28378%15)*/,
9255  0 /*delta_minutes*/,
9256  1883 /*until_year*/,
9257  11 /*until_month*/,
9258  18 /*until_day*/,
9259  4800 /*until_time_code (72000/15)*/,
9260  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
9261  },
9262  // -8:00 US P%sT 1946
9263  {
9264  &kAtcAllZonePolicyUS /*zone_policy*/,
9265  "P%T" /*format*/,
9266  -1920 /*offset_code (-28800/15)*/,
9267  0 /*offset_remainder (-28800%15)*/,
9268  0 /*delta_minutes*/,
9269  1946 /*until_year*/,
9270  1 /*until_month*/,
9271  1 /*until_day*/,
9272  0 /*until_time_code (0/15)*/,
9273  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9274  },
9275  // -8:00 CA P%sT 1967
9276  {
9277  &kAtcAllZonePolicyCA /*zone_policy*/,
9278  "P%T" /*format*/,
9279  -1920 /*offset_code (-28800/15)*/,
9280  0 /*offset_remainder (-28800%15)*/,
9281  0 /*delta_minutes*/,
9282  1967 /*until_year*/,
9283  1 /*until_month*/,
9284  1 /*until_day*/,
9285  0 /*until_time_code (0/15)*/,
9286  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9287  },
9288  // -8:00 US P%sT
9289  {
9290  &kAtcAllZonePolicyUS /*zone_policy*/,
9291  "P%T" /*format*/,
9292  -1920 /*offset_code (-28800/15)*/,
9293  0 /*offset_remainder (-28800%15)*/,
9294  0 /*delta_minutes*/,
9295  32767 /*until_year*/,
9296  1 /*until_month*/,
9297  1 /*until_day*/,
9298  0 /*until_time_code (0/15)*/,
9299  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9300  },
9301 
9302 };
9303 
9304 static const char kAtcZoneNameAmerica_Los_Angeles[] = "America/Los_Angeles";
9305 
9306 const AtcZoneInfo kAtcAllZoneAmerica_Los_Angeles = {
9307  kAtcZoneNameAmerica_Los_Angeles /*name*/,
9308  0xb7f7e8f2 /*zone_id*/,
9309  &kAtcAllZoneContext /*zone_context*/,
9310  4 /*num_eras*/,
9311  kAtcZoneEraAmerica_Los_Angeles /*eras*/,
9312  NULL /*target_info*/,
9313 };
9314 
9315 //---------------------------------------------------------------------------
9316 // Zone name: America/Maceio
9317 // Zone Eras: 9
9318 //---------------------------------------------------------------------------
9319 
9320 static const AtcZoneEra kAtcZoneEraAmerica_Maceio[] = {
9321  // -2:22:52 - LMT 1914
9322  {
9323  NULL /*zone_policy*/,
9324  "LMT" /*format*/,
9325  -572 /*offset_code (-8572/15)*/,
9326  8 /*offset_remainder (-8572%15)*/,
9327  0 /*delta_minutes*/,
9328  1914 /*until_year*/,
9329  1 /*until_month*/,
9330  1 /*until_day*/,
9331  0 /*until_time_code (0/15)*/,
9332  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9333  },
9334  // -3:00 Brazil -03/-02 1990 Sep 17
9335  {
9336  &kAtcAllZonePolicyBrazil /*zone_policy*/,
9337  "-03/-02" /*format*/,
9338  -720 /*offset_code (-10800/15)*/,
9339  0 /*offset_remainder (-10800%15)*/,
9340  0 /*delta_minutes*/,
9341  1990 /*until_year*/,
9342  9 /*until_month*/,
9343  17 /*until_day*/,
9344  0 /*until_time_code (0/15)*/,
9345  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9346  },
9347  // -3:00 - -03 1995 Oct 13
9348  {
9349  NULL /*zone_policy*/,
9350  "-03" /*format*/,
9351  -720 /*offset_code (-10800/15)*/,
9352  0 /*offset_remainder (-10800%15)*/,
9353  0 /*delta_minutes*/,
9354  1995 /*until_year*/,
9355  10 /*until_month*/,
9356  13 /*until_day*/,
9357  0 /*until_time_code (0/15)*/,
9358  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9359  },
9360  // -3:00 Brazil -03/-02 1996 Sep 4
9361  {
9362  &kAtcAllZonePolicyBrazil /*zone_policy*/,
9363  "-03/-02" /*format*/,
9364  -720 /*offset_code (-10800/15)*/,
9365  0 /*offset_remainder (-10800%15)*/,
9366  0 /*delta_minutes*/,
9367  1996 /*until_year*/,
9368  9 /*until_month*/,
9369  4 /*until_day*/,
9370  0 /*until_time_code (0/15)*/,
9371  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9372  },
9373  // -3:00 - -03 1999 Sep 30
9374  {
9375  NULL /*zone_policy*/,
9376  "-03" /*format*/,
9377  -720 /*offset_code (-10800/15)*/,
9378  0 /*offset_remainder (-10800%15)*/,
9379  0 /*delta_minutes*/,
9380  1999 /*until_year*/,
9381  9 /*until_month*/,
9382  30 /*until_day*/,
9383  0 /*until_time_code (0/15)*/,
9384  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9385  },
9386  // -3:00 Brazil -03/-02 2000 Oct 22
9387  {
9388  &kAtcAllZonePolicyBrazil /*zone_policy*/,
9389  "-03/-02" /*format*/,
9390  -720 /*offset_code (-10800/15)*/,
9391  0 /*offset_remainder (-10800%15)*/,
9392  0 /*delta_minutes*/,
9393  2000 /*until_year*/,
9394  10 /*until_month*/,
9395  22 /*until_day*/,
9396  0 /*until_time_code (0/15)*/,
9397  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9398  },
9399  // -3:00 - -03 2001 Sep 13
9400  {
9401  NULL /*zone_policy*/,
9402  "-03" /*format*/,
9403  -720 /*offset_code (-10800/15)*/,
9404  0 /*offset_remainder (-10800%15)*/,
9405  0 /*delta_minutes*/,
9406  2001 /*until_year*/,
9407  9 /*until_month*/,
9408  13 /*until_day*/,
9409  0 /*until_time_code (0/15)*/,
9410  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9411  },
9412  // -3:00 Brazil -03/-02 2002 Oct 1
9413  {
9414  &kAtcAllZonePolicyBrazil /*zone_policy*/,
9415  "-03/-02" /*format*/,
9416  -720 /*offset_code (-10800/15)*/,
9417  0 /*offset_remainder (-10800%15)*/,
9418  0 /*delta_minutes*/,
9419  2002 /*until_year*/,
9420  10 /*until_month*/,
9421  1 /*until_day*/,
9422  0 /*until_time_code (0/15)*/,
9423  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9424  },
9425  // -3:00 - -03
9426  {
9427  NULL /*zone_policy*/,
9428  "-03" /*format*/,
9429  -720 /*offset_code (-10800/15)*/,
9430  0 /*offset_remainder (-10800%15)*/,
9431  0 /*delta_minutes*/,
9432  32767 /*until_year*/,
9433  1 /*until_month*/,
9434  1 /*until_day*/,
9435  0 /*until_time_code (0/15)*/,
9436  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9437  },
9438 
9439 };
9440 
9441 static const char kAtcZoneNameAmerica_Maceio[] = "America/Maceio";
9442 
9443 const AtcZoneInfo kAtcAllZoneAmerica_Maceio = {
9444  kAtcZoneNameAmerica_Maceio /*name*/,
9445  0xac80c6d4 /*zone_id*/,
9446  &kAtcAllZoneContext /*zone_context*/,
9447  9 /*num_eras*/,
9448  kAtcZoneEraAmerica_Maceio /*eras*/,
9449  NULL /*target_info*/,
9450 };
9451 
9452 //---------------------------------------------------------------------------
9453 // Zone name: America/Managua
9454 // Zone Eras: 9
9455 //---------------------------------------------------------------------------
9456 
9457 static const AtcZoneEra kAtcZoneEraAmerica_Managua[] = {
9458  // -5:45:08 - LMT 1890
9459  {
9460  NULL /*zone_policy*/,
9461  "LMT" /*format*/,
9462  -1381 /*offset_code (-20708/15)*/,
9463  7 /*offset_remainder (-20708%15)*/,
9464  0 /*delta_minutes*/,
9465  1890 /*until_year*/,
9466  1 /*until_month*/,
9467  1 /*until_day*/,
9468  0 /*until_time_code (0/15)*/,
9469  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9470  },
9471  // -5:45:12 - MMT 1934 Jun 23
9472  {
9473  NULL /*zone_policy*/,
9474  "MMT" /*format*/,
9475  -1381 /*offset_code (-20712/15)*/,
9476  3 /*offset_remainder (-20712%15)*/,
9477  0 /*delta_minutes*/,
9478  1934 /*until_year*/,
9479  6 /*until_month*/,
9480  23 /*until_day*/,
9481  0 /*until_time_code (0/15)*/,
9482  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9483  },
9484  // -6:00 - CST 1973 May
9485  {
9486  NULL /*zone_policy*/,
9487  "CST" /*format*/,
9488  -1440 /*offset_code (-21600/15)*/,
9489  0 /*offset_remainder (-21600%15)*/,
9490  0 /*delta_minutes*/,
9491  1973 /*until_year*/,
9492  5 /*until_month*/,
9493  1 /*until_day*/,
9494  0 /*until_time_code (0/15)*/,
9495  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9496  },
9497  // -5:00 - EST 1975 Feb 16
9498  {
9499  NULL /*zone_policy*/,
9500  "EST" /*format*/,
9501  -1200 /*offset_code (-18000/15)*/,
9502  0 /*offset_remainder (-18000%15)*/,
9503  0 /*delta_minutes*/,
9504  1975 /*until_year*/,
9505  2 /*until_month*/,
9506  16 /*until_day*/,
9507  0 /*until_time_code (0/15)*/,
9508  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9509  },
9510  // -6:00 Nic C%sT 1992 Jan 1 4:00
9511  {
9512  &kAtcAllZonePolicyNic /*zone_policy*/,
9513  "C%T" /*format*/,
9514  -1440 /*offset_code (-21600/15)*/,
9515  0 /*offset_remainder (-21600%15)*/,
9516  0 /*delta_minutes*/,
9517  1992 /*until_year*/,
9518  1 /*until_month*/,
9519  1 /*until_day*/,
9520  960 /*until_time_code (14400/15)*/,
9521  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9522  },
9523  // -5:00 - EST 1992 Sep 24
9524  {
9525  NULL /*zone_policy*/,
9526  "EST" /*format*/,
9527  -1200 /*offset_code (-18000/15)*/,
9528  0 /*offset_remainder (-18000%15)*/,
9529  0 /*delta_minutes*/,
9530  1992 /*until_year*/,
9531  9 /*until_month*/,
9532  24 /*until_day*/,
9533  0 /*until_time_code (0/15)*/,
9534  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9535  },
9536  // -6:00 - CST 1993
9537  {
9538  NULL /*zone_policy*/,
9539  "CST" /*format*/,
9540  -1440 /*offset_code (-21600/15)*/,
9541  0 /*offset_remainder (-21600%15)*/,
9542  0 /*delta_minutes*/,
9543  1993 /*until_year*/,
9544  1 /*until_month*/,
9545  1 /*until_day*/,
9546  0 /*until_time_code (0/15)*/,
9547  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9548  },
9549  // -5:00 - EST 1997
9550  {
9551  NULL /*zone_policy*/,
9552  "EST" /*format*/,
9553  -1200 /*offset_code (-18000/15)*/,
9554  0 /*offset_remainder (-18000%15)*/,
9555  0 /*delta_minutes*/,
9556  1997 /*until_year*/,
9557  1 /*until_month*/,
9558  1 /*until_day*/,
9559  0 /*until_time_code (0/15)*/,
9560  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9561  },
9562  // -6:00 Nic C%sT
9563  {
9564  &kAtcAllZonePolicyNic /*zone_policy*/,
9565  "C%T" /*format*/,
9566  -1440 /*offset_code (-21600/15)*/,
9567  0 /*offset_remainder (-21600%15)*/,
9568  0 /*delta_minutes*/,
9569  32767 /*until_year*/,
9570  1 /*until_month*/,
9571  1 /*until_day*/,
9572  0 /*until_time_code (0/15)*/,
9573  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9574  },
9575 
9576 };
9577 
9578 static const char kAtcZoneNameAmerica_Managua[] = "America/Managua";
9579 
9580 const AtcZoneInfo kAtcAllZoneAmerica_Managua = {
9581  kAtcZoneNameAmerica_Managua /*name*/,
9582  0x3d5e7600 /*zone_id*/,
9583  &kAtcAllZoneContext /*zone_context*/,
9584  9 /*num_eras*/,
9585  kAtcZoneEraAmerica_Managua /*eras*/,
9586  NULL /*target_info*/,
9587 };
9588 
9589 //---------------------------------------------------------------------------
9590 // Zone name: America/Manaus
9591 // Zone Eras: 5
9592 //---------------------------------------------------------------------------
9593 
9594 static const AtcZoneEra kAtcZoneEraAmerica_Manaus[] = {
9595  // -4:00:04 - LMT 1914
9596  {
9597  NULL /*zone_policy*/,
9598  "LMT" /*format*/,
9599  -961 /*offset_code (-14404/15)*/,
9600  11 /*offset_remainder (-14404%15)*/,
9601  0 /*delta_minutes*/,
9602  1914 /*until_year*/,
9603  1 /*until_month*/,
9604  1 /*until_day*/,
9605  0 /*until_time_code (0/15)*/,
9606  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9607  },
9608  // -4:00 Brazil -04/-03 1988 Sep 12
9609  {
9610  &kAtcAllZonePolicyBrazil /*zone_policy*/,
9611  "-04/-03" /*format*/,
9612  -960 /*offset_code (-14400/15)*/,
9613  0 /*offset_remainder (-14400%15)*/,
9614  0 /*delta_minutes*/,
9615  1988 /*until_year*/,
9616  9 /*until_month*/,
9617  12 /*until_day*/,
9618  0 /*until_time_code (0/15)*/,
9619  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9620  },
9621  // -4:00 - -04 1993 Sep 28
9622  {
9623  NULL /*zone_policy*/,
9624  "-04" /*format*/,
9625  -960 /*offset_code (-14400/15)*/,
9626  0 /*offset_remainder (-14400%15)*/,
9627  0 /*delta_minutes*/,
9628  1993 /*until_year*/,
9629  9 /*until_month*/,
9630  28 /*until_day*/,
9631  0 /*until_time_code (0/15)*/,
9632  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9633  },
9634  // -4:00 Brazil -04/-03 1994 Sep 22
9635  {
9636  &kAtcAllZonePolicyBrazil /*zone_policy*/,
9637  "-04/-03" /*format*/,
9638  -960 /*offset_code (-14400/15)*/,
9639  0 /*offset_remainder (-14400%15)*/,
9640  0 /*delta_minutes*/,
9641  1994 /*until_year*/,
9642  9 /*until_month*/,
9643  22 /*until_day*/,
9644  0 /*until_time_code (0/15)*/,
9645  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9646  },
9647  // -4:00 - -04
9648  {
9649  NULL /*zone_policy*/,
9650  "-04" /*format*/,
9651  -960 /*offset_code (-14400/15)*/,
9652  0 /*offset_remainder (-14400%15)*/,
9653  0 /*delta_minutes*/,
9654  32767 /*until_year*/,
9655  1 /*until_month*/,
9656  1 /*until_day*/,
9657  0 /*until_time_code (0/15)*/,
9658  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9659  },
9660 
9661 };
9662 
9663 static const char kAtcZoneNameAmerica_Manaus[] = "America/Manaus";
9664 
9665 const AtcZoneInfo kAtcAllZoneAmerica_Manaus = {
9666  kAtcZoneNameAmerica_Manaus /*name*/,
9667  0xac86bf8b /*zone_id*/,
9668  &kAtcAllZoneContext /*zone_context*/,
9669  5 /*num_eras*/,
9670  kAtcZoneEraAmerica_Manaus /*eras*/,
9671  NULL /*target_info*/,
9672 };
9673 
9674 //---------------------------------------------------------------------------
9675 // Zone name: America/Martinique
9676 // Zone Eras: 5
9677 //---------------------------------------------------------------------------
9678 
9679 static const AtcZoneEra kAtcZoneEraAmerica_Martinique[] = {
9680  // -4:04:20 - LMT 1890
9681  {
9682  NULL /*zone_policy*/,
9683  "LMT" /*format*/,
9684  -978 /*offset_code (-14660/15)*/,
9685  10 /*offset_remainder (-14660%15)*/,
9686  0 /*delta_minutes*/,
9687  1890 /*until_year*/,
9688  1 /*until_month*/,
9689  1 /*until_day*/,
9690  0 /*until_time_code (0/15)*/,
9691  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9692  },
9693  // -4:04:20 - FFMT 1911 May
9694  {
9695  NULL /*zone_policy*/,
9696  "FFMT" /*format*/,
9697  -978 /*offset_code (-14660/15)*/,
9698  10 /*offset_remainder (-14660%15)*/,
9699  0 /*delta_minutes*/,
9700  1911 /*until_year*/,
9701  5 /*until_month*/,
9702  1 /*until_day*/,
9703  0 /*until_time_code (0/15)*/,
9704  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9705  },
9706  // -4:00 - AST 1980 Apr 6
9707  {
9708  NULL /*zone_policy*/,
9709  "AST" /*format*/,
9710  -960 /*offset_code (-14400/15)*/,
9711  0 /*offset_remainder (-14400%15)*/,
9712  0 /*delta_minutes*/,
9713  1980 /*until_year*/,
9714  4 /*until_month*/,
9715  6 /*until_day*/,
9716  0 /*until_time_code (0/15)*/,
9717  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9718  },
9719  // -4:00 1:00 ADT 1980 Sep 28
9720  {
9721  NULL /*zone_policy*/,
9722  "ADT" /*format*/,
9723  -960 /*offset_code (-14400/15)*/,
9724  0 /*offset_remainder (-14400%15)*/,
9725  60 /*delta_minutes*/,
9726  1980 /*until_year*/,
9727  9 /*until_month*/,
9728  28 /*until_day*/,
9729  0 /*until_time_code (0/15)*/,
9730  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9731  },
9732  // -4:00 - AST
9733  {
9734  NULL /*zone_policy*/,
9735  "AST" /*format*/,
9736  -960 /*offset_code (-14400/15)*/,
9737  0 /*offset_remainder (-14400%15)*/,
9738  0 /*delta_minutes*/,
9739  32767 /*until_year*/,
9740  1 /*until_month*/,
9741  1 /*until_day*/,
9742  0 /*until_time_code (0/15)*/,
9743  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9744  },
9745 
9746 };
9747 
9748 static const char kAtcZoneNameAmerica_Martinique[] = "America/Martinique";
9749 
9750 const AtcZoneInfo kAtcAllZoneAmerica_Martinique = {
9751  kAtcZoneNameAmerica_Martinique /*name*/,
9752  0x551e84c5 /*zone_id*/,
9753  &kAtcAllZoneContext /*zone_context*/,
9754  5 /*num_eras*/,
9755  kAtcZoneEraAmerica_Martinique /*eras*/,
9756  NULL /*target_info*/,
9757 };
9758 
9759 //---------------------------------------------------------------------------
9760 // Zone name: America/Matamoros
9761 // Zone Eras: 5
9762 //---------------------------------------------------------------------------
9763 
9764 static const AtcZoneEra kAtcZoneEraAmerica_Matamoros[] = {
9765  // -6:30:00 - LMT 1922 Jan 1 6:00u
9766  {
9767  NULL /*zone_policy*/,
9768  "LMT" /*format*/,
9769  -1560 /*offset_code (-23400/15)*/,
9770  0 /*offset_remainder (-23400%15)*/,
9771  0 /*delta_minutes*/,
9772  1922 /*until_year*/,
9773  1 /*until_month*/,
9774  1 /*until_day*/,
9775  1440 /*until_time_code (21600/15)*/,
9776  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
9777  },
9778  // -6:00 - CST 1988
9779  {
9780  NULL /*zone_policy*/,
9781  "CST" /*format*/,
9782  -1440 /*offset_code (-21600/15)*/,
9783  0 /*offset_remainder (-21600%15)*/,
9784  0 /*delta_minutes*/,
9785  1988 /*until_year*/,
9786  1 /*until_month*/,
9787  1 /*until_day*/,
9788  0 /*until_time_code (0/15)*/,
9789  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9790  },
9791  // -6:00 US C%sT 1989
9792  {
9793  &kAtcAllZonePolicyUS /*zone_policy*/,
9794  "C%T" /*format*/,
9795  -1440 /*offset_code (-21600/15)*/,
9796  0 /*offset_remainder (-21600%15)*/,
9797  0 /*delta_minutes*/,
9798  1989 /*until_year*/,
9799  1 /*until_month*/,
9800  1 /*until_day*/,
9801  0 /*until_time_code (0/15)*/,
9802  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9803  },
9804  // -6:00 Mexico C%sT 2010
9805  {
9806  &kAtcAllZonePolicyMexico /*zone_policy*/,
9807  "C%T" /*format*/,
9808  -1440 /*offset_code (-21600/15)*/,
9809  0 /*offset_remainder (-21600%15)*/,
9810  0 /*delta_minutes*/,
9811  2010 /*until_year*/,
9812  1 /*until_month*/,
9813  1 /*until_day*/,
9814  0 /*until_time_code (0/15)*/,
9815  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9816  },
9817  // -6:00 US C%sT
9818  {
9819  &kAtcAllZonePolicyUS /*zone_policy*/,
9820  "C%T" /*format*/,
9821  -1440 /*offset_code (-21600/15)*/,
9822  0 /*offset_remainder (-21600%15)*/,
9823  0 /*delta_minutes*/,
9824  32767 /*until_year*/,
9825  1 /*until_month*/,
9826  1 /*until_day*/,
9827  0 /*until_time_code (0/15)*/,
9828  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9829  },
9830 
9831 };
9832 
9833 static const char kAtcZoneNameAmerica_Matamoros[] = "America/Matamoros";
9834 
9835 const AtcZoneInfo kAtcAllZoneAmerica_Matamoros = {
9836  kAtcZoneNameAmerica_Matamoros /*name*/,
9837  0xdd1b0259 /*zone_id*/,
9838  &kAtcAllZoneContext /*zone_context*/,
9839  5 /*num_eras*/,
9840  kAtcZoneEraAmerica_Matamoros /*eras*/,
9841  NULL /*target_info*/,
9842 };
9843 
9844 //---------------------------------------------------------------------------
9845 // Zone name: America/Mazatlan
9846 // Zone Eras: 8
9847 //---------------------------------------------------------------------------
9848 
9849 static const AtcZoneEra kAtcZoneEraAmerica_Mazatlan[] = {
9850  // -7:05:40 - LMT 1922 Jan 1 7:00u
9851  {
9852  NULL /*zone_policy*/,
9853  "LMT" /*format*/,
9854  -1703 /*offset_code (-25540/15)*/,
9855  5 /*offset_remainder (-25540%15)*/,
9856  0 /*delta_minutes*/,
9857  1922 /*until_year*/,
9858  1 /*until_month*/,
9859  1 /*until_day*/,
9860  1680 /*until_time_code (25200/15)*/,
9861  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
9862  },
9863  // -7:00 - MST 1927 Jun 10 23:00
9864  {
9865  NULL /*zone_policy*/,
9866  "MST" /*format*/,
9867  -1680 /*offset_code (-25200/15)*/,
9868  0 /*offset_remainder (-25200%15)*/,
9869  0 /*delta_minutes*/,
9870  1927 /*until_year*/,
9871  6 /*until_month*/,
9872  10 /*until_day*/,
9873  5520 /*until_time_code (82800/15)*/,
9874  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9875  },
9876  // -6:00 - CST 1930 Nov 15
9877  {
9878  NULL /*zone_policy*/,
9879  "CST" /*format*/,
9880  -1440 /*offset_code (-21600/15)*/,
9881  0 /*offset_remainder (-21600%15)*/,
9882  0 /*delta_minutes*/,
9883  1930 /*until_year*/,
9884  11 /*until_month*/,
9885  15 /*until_day*/,
9886  0 /*until_time_code (0/15)*/,
9887  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9888  },
9889  // -7:00 Mexico M%sT 1932 Apr 1
9890  {
9891  &kAtcAllZonePolicyMexico /*zone_policy*/,
9892  "M%T" /*format*/,
9893  -1680 /*offset_code (-25200/15)*/,
9894  0 /*offset_remainder (-25200%15)*/,
9895  0 /*delta_minutes*/,
9896  1932 /*until_year*/,
9897  4 /*until_month*/,
9898  1 /*until_day*/,
9899  0 /*until_time_code (0/15)*/,
9900  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9901  },
9902  // -6:00 - CST 1942 Apr 24
9903  {
9904  NULL /*zone_policy*/,
9905  "CST" /*format*/,
9906  -1440 /*offset_code (-21600/15)*/,
9907  0 /*offset_remainder (-21600%15)*/,
9908  0 /*delta_minutes*/,
9909  1942 /*until_year*/,
9910  4 /*until_month*/,
9911  24 /*until_day*/,
9912  0 /*until_time_code (0/15)*/,
9913  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9914  },
9915  // -7:00 - MST 1949 Jan 14
9916  {
9917  NULL /*zone_policy*/,
9918  "MST" /*format*/,
9919  -1680 /*offset_code (-25200/15)*/,
9920  0 /*offset_remainder (-25200%15)*/,
9921  0 /*delta_minutes*/,
9922  1949 /*until_year*/,
9923  1 /*until_month*/,
9924  14 /*until_day*/,
9925  0 /*until_time_code (0/15)*/,
9926  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9927  },
9928  // -8:00 - PST 1970
9929  {
9930  NULL /*zone_policy*/,
9931  "PST" /*format*/,
9932  -1920 /*offset_code (-28800/15)*/,
9933  0 /*offset_remainder (-28800%15)*/,
9934  0 /*delta_minutes*/,
9935  1970 /*until_year*/,
9936  1 /*until_month*/,
9937  1 /*until_day*/,
9938  0 /*until_time_code (0/15)*/,
9939  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9940  },
9941  // -7:00 Mexico M%sT
9942  {
9943  &kAtcAllZonePolicyMexico /*zone_policy*/,
9944  "M%T" /*format*/,
9945  -1680 /*offset_code (-25200/15)*/,
9946  0 /*offset_remainder (-25200%15)*/,
9947  0 /*delta_minutes*/,
9948  32767 /*until_year*/,
9949  1 /*until_month*/,
9950  1 /*until_day*/,
9951  0 /*until_time_code (0/15)*/,
9952  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9953  },
9954 
9955 };
9956 
9957 static const char kAtcZoneNameAmerica_Mazatlan[] = "America/Mazatlan";
9958 
9959 const AtcZoneInfo kAtcAllZoneAmerica_Mazatlan = {
9960  kAtcZoneNameAmerica_Mazatlan /*name*/,
9961  0x0532189e /*zone_id*/,
9962  &kAtcAllZoneContext /*zone_context*/,
9963  8 /*num_eras*/,
9964  kAtcZoneEraAmerica_Mazatlan /*eras*/,
9965  NULL /*target_info*/,
9966 };
9967 
9968 //---------------------------------------------------------------------------
9969 // Zone name: America/Menominee
9970 // Zone Eras: 5
9971 //---------------------------------------------------------------------------
9972 
9973 static const AtcZoneEra kAtcZoneEraAmerica_Menominee[] = {
9974  // -5:50:27 - LMT 1885 Sep 18 12:00
9975  {
9976  NULL /*zone_policy*/,
9977  "LMT" /*format*/,
9978  -1402 /*offset_code (-21027/15)*/,
9979  3 /*offset_remainder (-21027%15)*/,
9980  0 /*delta_minutes*/,
9981  1885 /*until_year*/,
9982  9 /*until_month*/,
9983  18 /*until_day*/,
9984  2880 /*until_time_code (43200/15)*/,
9985  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9986  },
9987  // -6:00 US C%sT 1946
9988  {
9989  &kAtcAllZonePolicyUS /*zone_policy*/,
9990  "C%T" /*format*/,
9991  -1440 /*offset_code (-21600/15)*/,
9992  0 /*offset_remainder (-21600%15)*/,
9993  0 /*delta_minutes*/,
9994  1946 /*until_year*/,
9995  1 /*until_month*/,
9996  1 /*until_day*/,
9997  0 /*until_time_code (0/15)*/,
9998  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
9999  },
10000  // -6:00 Menominee C%sT 1969 Apr 27 2:00
10001  {
10002  &kAtcAllZonePolicyMenominee /*zone_policy*/,
10003  "C%T" /*format*/,
10004  -1440 /*offset_code (-21600/15)*/,
10005  0 /*offset_remainder (-21600%15)*/,
10006  0 /*delta_minutes*/,
10007  1969 /*until_year*/,
10008  4 /*until_month*/,
10009  27 /*until_day*/,
10010  480 /*until_time_code (7200/15)*/,
10011  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10012  },
10013  // -5:00 - EST 1973 Apr 29 2:00
10014  {
10015  NULL /*zone_policy*/,
10016  "EST" /*format*/,
10017  -1200 /*offset_code (-18000/15)*/,
10018  0 /*offset_remainder (-18000%15)*/,
10019  0 /*delta_minutes*/,
10020  1973 /*until_year*/,
10021  4 /*until_month*/,
10022  29 /*until_day*/,
10023  480 /*until_time_code (7200/15)*/,
10024  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10025  },
10026  // -6:00 US C%sT
10027  {
10028  &kAtcAllZonePolicyUS /*zone_policy*/,
10029  "C%T" /*format*/,
10030  -1440 /*offset_code (-21600/15)*/,
10031  0 /*offset_remainder (-21600%15)*/,
10032  0 /*delta_minutes*/,
10033  32767 /*until_year*/,
10034  1 /*until_month*/,
10035  1 /*until_day*/,
10036  0 /*until_time_code (0/15)*/,
10037  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10038  },
10039 
10040 };
10041 
10042 static const char kAtcZoneNameAmerica_Menominee[] = "America/Menominee";
10043 
10044 const AtcZoneInfo kAtcAllZoneAmerica_Menominee = {
10045  kAtcZoneNameAmerica_Menominee /*name*/,
10046  0xe0e9c583 /*zone_id*/,
10047  &kAtcAllZoneContext /*zone_context*/,
10048  5 /*num_eras*/,
10049  kAtcZoneEraAmerica_Menominee /*eras*/,
10050  NULL /*target_info*/,
10051 };
10052 
10053 //---------------------------------------------------------------------------
10054 // Zone name: America/Merida
10055 // Zone Eras: 4
10056 //---------------------------------------------------------------------------
10057 
10058 static const AtcZoneEra kAtcZoneEraAmerica_Merida[] = {
10059  // -5:58:28 - LMT 1922 Jan 1 6:00u
10060  {
10061  NULL /*zone_policy*/,
10062  "LMT" /*format*/,
10063  -1434 /*offset_code (-21508/15)*/,
10064  2 /*offset_remainder (-21508%15)*/,
10065  0 /*delta_minutes*/,
10066  1922 /*until_year*/,
10067  1 /*until_month*/,
10068  1 /*until_day*/,
10069  1440 /*until_time_code (21600/15)*/,
10070  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
10071  },
10072  // -6:00 - CST 1981 Dec 23
10073  {
10074  NULL /*zone_policy*/,
10075  "CST" /*format*/,
10076  -1440 /*offset_code (-21600/15)*/,
10077  0 /*offset_remainder (-21600%15)*/,
10078  0 /*delta_minutes*/,
10079  1981 /*until_year*/,
10080  12 /*until_month*/,
10081  23 /*until_day*/,
10082  0 /*until_time_code (0/15)*/,
10083  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10084  },
10085  // -5:00 - EST 1982 Dec 2
10086  {
10087  NULL /*zone_policy*/,
10088  "EST" /*format*/,
10089  -1200 /*offset_code (-18000/15)*/,
10090  0 /*offset_remainder (-18000%15)*/,
10091  0 /*delta_minutes*/,
10092  1982 /*until_year*/,
10093  12 /*until_month*/,
10094  2 /*until_day*/,
10095  0 /*until_time_code (0/15)*/,
10096  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10097  },
10098  // -6:00 Mexico C%sT
10099  {
10100  &kAtcAllZonePolicyMexico /*zone_policy*/,
10101  "C%T" /*format*/,
10102  -1440 /*offset_code (-21600/15)*/,
10103  0 /*offset_remainder (-21600%15)*/,
10104  0 /*delta_minutes*/,
10105  32767 /*until_year*/,
10106  1 /*until_month*/,
10107  1 /*until_day*/,
10108  0 /*until_time_code (0/15)*/,
10109  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10110  },
10111 
10112 };
10113 
10114 static const char kAtcZoneNameAmerica_Merida[] = "America/Merida";
10115 
10116 const AtcZoneInfo kAtcAllZoneAmerica_Merida = {
10117  kAtcZoneNameAmerica_Merida /*name*/,
10118  0xacd172d8 /*zone_id*/,
10119  &kAtcAllZoneContext /*zone_context*/,
10120  4 /*num_eras*/,
10121  kAtcZoneEraAmerica_Merida /*eras*/,
10122  NULL /*target_info*/,
10123 };
10124 
10125 //---------------------------------------------------------------------------
10126 // Zone name: America/Metlakatla
10127 // Zone Eras: 10
10128 //---------------------------------------------------------------------------
10129 
10130 static const AtcZoneEra kAtcZoneEraAmerica_Metlakatla[] = {
10131  // 15:13:42 - LMT 1867 Oct 19 15:44:55
10132  {
10133  NULL /*zone_policy*/,
10134  "LMT" /*format*/,
10135  3654 /*offset_code (54822/15)*/,
10136  12 /*offset_remainder (54822%15)*/,
10137  0 /*delta_minutes*/,
10138  1867 /*until_year*/,
10139  10 /*until_month*/,
10140  19 /*until_day*/,
10141  3779 /*until_time_code (56695/15)*/,
10142  10 /*until_time_modifier (kAtcSuffixW + seconds=10)*/,
10143  },
10144  // -8:46:18 - LMT 1900 Aug 20 12:00
10145  {
10146  NULL /*zone_policy*/,
10147  "LMT" /*format*/,
10148  -2106 /*offset_code (-31578/15)*/,
10149  12 /*offset_remainder (-31578%15)*/,
10150  0 /*delta_minutes*/,
10151  1900 /*until_year*/,
10152  8 /*until_month*/,
10153  20 /*until_day*/,
10154  2880 /*until_time_code (43200/15)*/,
10155  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10156  },
10157  // -8:00 - PST 1942
10158  {
10159  NULL /*zone_policy*/,
10160  "PST" /*format*/,
10161  -1920 /*offset_code (-28800/15)*/,
10162  0 /*offset_remainder (-28800%15)*/,
10163  0 /*delta_minutes*/,
10164  1942 /*until_year*/,
10165  1 /*until_month*/,
10166  1 /*until_day*/,
10167  0 /*until_time_code (0/15)*/,
10168  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10169  },
10170  // -8:00 US P%sT 1946
10171  {
10172  &kAtcAllZonePolicyUS /*zone_policy*/,
10173  "P%T" /*format*/,
10174  -1920 /*offset_code (-28800/15)*/,
10175  0 /*offset_remainder (-28800%15)*/,
10176  0 /*delta_minutes*/,
10177  1946 /*until_year*/,
10178  1 /*until_month*/,
10179  1 /*until_day*/,
10180  0 /*until_time_code (0/15)*/,
10181  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10182  },
10183  // -8:00 - PST 1969
10184  {
10185  NULL /*zone_policy*/,
10186  "PST" /*format*/,
10187  -1920 /*offset_code (-28800/15)*/,
10188  0 /*offset_remainder (-28800%15)*/,
10189  0 /*delta_minutes*/,
10190  1969 /*until_year*/,
10191  1 /*until_month*/,
10192  1 /*until_day*/,
10193  0 /*until_time_code (0/15)*/,
10194  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10195  },
10196  // -8:00 US P%sT 1983 Oct 30 2:00
10197  {
10198  &kAtcAllZonePolicyUS /*zone_policy*/,
10199  "P%T" /*format*/,
10200  -1920 /*offset_code (-28800/15)*/,
10201  0 /*offset_remainder (-28800%15)*/,
10202  0 /*delta_minutes*/,
10203  1983 /*until_year*/,
10204  10 /*until_month*/,
10205  30 /*until_day*/,
10206  480 /*until_time_code (7200/15)*/,
10207  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10208  },
10209  // -8:00 - PST 2015 Nov 1 2:00
10210  {
10211  NULL /*zone_policy*/,
10212  "PST" /*format*/,
10213  -1920 /*offset_code (-28800/15)*/,
10214  0 /*offset_remainder (-28800%15)*/,
10215  0 /*delta_minutes*/,
10216  2015 /*until_year*/,
10217  11 /*until_month*/,
10218  1 /*until_day*/,
10219  480 /*until_time_code (7200/15)*/,
10220  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10221  },
10222  // -9:00 US AK%sT 2018 Nov 4 2:00
10223  {
10224  &kAtcAllZonePolicyUS /*zone_policy*/,
10225  "AK%T" /*format*/,
10226  -2160 /*offset_code (-32400/15)*/,
10227  0 /*offset_remainder (-32400%15)*/,
10228  0 /*delta_minutes*/,
10229  2018 /*until_year*/,
10230  11 /*until_month*/,
10231  4 /*until_day*/,
10232  480 /*until_time_code (7200/15)*/,
10233  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10234  },
10235  // -8:00 - PST 2019 Jan 20 2:00
10236  {
10237  NULL /*zone_policy*/,
10238  "PST" /*format*/,
10239  -1920 /*offset_code (-28800/15)*/,
10240  0 /*offset_remainder (-28800%15)*/,
10241  0 /*delta_minutes*/,
10242  2019 /*until_year*/,
10243  1 /*until_month*/,
10244  20 /*until_day*/,
10245  480 /*until_time_code (7200/15)*/,
10246  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10247  },
10248  // -9:00 US AK%sT
10249  {
10250  &kAtcAllZonePolicyUS /*zone_policy*/,
10251  "AK%T" /*format*/,
10252  -2160 /*offset_code (-32400/15)*/,
10253  0 /*offset_remainder (-32400%15)*/,
10254  0 /*delta_minutes*/,
10255  32767 /*until_year*/,
10256  1 /*until_month*/,
10257  1 /*until_day*/,
10258  0 /*until_time_code (0/15)*/,
10259  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10260  },
10261 
10262 };
10263 
10264 static const char kAtcZoneNameAmerica_Metlakatla[] = "America/Metlakatla";
10265 
10266 const AtcZoneInfo kAtcAllZoneAmerica_Metlakatla = {
10267  kAtcZoneNameAmerica_Metlakatla /*name*/,
10268  0x84de2686 /*zone_id*/,
10269  &kAtcAllZoneContext /*zone_context*/,
10270  10 /*num_eras*/,
10271  kAtcZoneEraAmerica_Metlakatla /*eras*/,
10272  NULL /*target_info*/,
10273 };
10274 
10275 //---------------------------------------------------------------------------
10276 // Zone name: America/Mexico_City
10277 // Zone Eras: 7
10278 //---------------------------------------------------------------------------
10279 
10280 static const AtcZoneEra kAtcZoneEraAmerica_Mexico_City[] = {
10281  // -6:36:36 - LMT 1922 Jan 1 7:00u
10282  {
10283  NULL /*zone_policy*/,
10284  "LMT" /*format*/,
10285  -1587 /*offset_code (-23796/15)*/,
10286  9 /*offset_remainder (-23796%15)*/,
10287  0 /*delta_minutes*/,
10288  1922 /*until_year*/,
10289  1 /*until_month*/,
10290  1 /*until_day*/,
10291  1680 /*until_time_code (25200/15)*/,
10292  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
10293  },
10294  // -7:00 - MST 1927 Jun 10 23:00
10295  {
10296  NULL /*zone_policy*/,
10297  "MST" /*format*/,
10298  -1680 /*offset_code (-25200/15)*/,
10299  0 /*offset_remainder (-25200%15)*/,
10300  0 /*delta_minutes*/,
10301  1927 /*until_year*/,
10302  6 /*until_month*/,
10303  10 /*until_day*/,
10304  5520 /*until_time_code (82800/15)*/,
10305  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10306  },
10307  // -6:00 - CST 1930 Nov 15
10308  {
10309  NULL /*zone_policy*/,
10310  "CST" /*format*/,
10311  -1440 /*offset_code (-21600/15)*/,
10312  0 /*offset_remainder (-21600%15)*/,
10313  0 /*delta_minutes*/,
10314  1930 /*until_year*/,
10315  11 /*until_month*/,
10316  15 /*until_day*/,
10317  0 /*until_time_code (0/15)*/,
10318  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10319  },
10320  // -7:00 Mexico M%sT 1932 Apr 1
10321  {
10322  &kAtcAllZonePolicyMexico /*zone_policy*/,
10323  "M%T" /*format*/,
10324  -1680 /*offset_code (-25200/15)*/,
10325  0 /*offset_remainder (-25200%15)*/,
10326  0 /*delta_minutes*/,
10327  1932 /*until_year*/,
10328  4 /*until_month*/,
10329  1 /*until_day*/,
10330  0 /*until_time_code (0/15)*/,
10331  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10332  },
10333  // -6:00 Mexico C%sT 2001 Sep 30 2:00
10334  {
10335  &kAtcAllZonePolicyMexico /*zone_policy*/,
10336  "C%T" /*format*/,
10337  -1440 /*offset_code (-21600/15)*/,
10338  0 /*offset_remainder (-21600%15)*/,
10339  0 /*delta_minutes*/,
10340  2001 /*until_year*/,
10341  9 /*until_month*/,
10342  30 /*until_day*/,
10343  480 /*until_time_code (7200/15)*/,
10344  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10345  },
10346  // -6:00 - CST 2002 Feb 20
10347  {
10348  NULL /*zone_policy*/,
10349  "CST" /*format*/,
10350  -1440 /*offset_code (-21600/15)*/,
10351  0 /*offset_remainder (-21600%15)*/,
10352  0 /*delta_minutes*/,
10353  2002 /*until_year*/,
10354  2 /*until_month*/,
10355  20 /*until_day*/,
10356  0 /*until_time_code (0/15)*/,
10357  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10358  },
10359  // -6:00 Mexico C%sT
10360  {
10361  &kAtcAllZonePolicyMexico /*zone_policy*/,
10362  "C%T" /*format*/,
10363  -1440 /*offset_code (-21600/15)*/,
10364  0 /*offset_remainder (-21600%15)*/,
10365  0 /*delta_minutes*/,
10366  32767 /*until_year*/,
10367  1 /*until_month*/,
10368  1 /*until_day*/,
10369  0 /*until_time_code (0/15)*/,
10370  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10371  },
10372 
10373 };
10374 
10375 static const char kAtcZoneNameAmerica_Mexico_City[] = "America/Mexico_City";
10376 
10377 const AtcZoneInfo kAtcAllZoneAmerica_Mexico_City = {
10378  kAtcZoneNameAmerica_Mexico_City /*name*/,
10379  0xd0d93f43 /*zone_id*/,
10380  &kAtcAllZoneContext /*zone_context*/,
10381  7 /*num_eras*/,
10382  kAtcZoneEraAmerica_Mexico_City /*eras*/,
10383  NULL /*target_info*/,
10384 };
10385 
10386 //---------------------------------------------------------------------------
10387 // Zone name: America/Miquelon
10388 // Zone Eras: 4
10389 //---------------------------------------------------------------------------
10390 
10391 static const AtcZoneEra kAtcZoneEraAmerica_Miquelon[] = {
10392  // -3:44:40 - LMT 1911 May 15
10393  {
10394  NULL /*zone_policy*/,
10395  "LMT" /*format*/,
10396  -899 /*offset_code (-13480/15)*/,
10397  5 /*offset_remainder (-13480%15)*/,
10398  0 /*delta_minutes*/,
10399  1911 /*until_year*/,
10400  5 /*until_month*/,
10401  15 /*until_day*/,
10402  0 /*until_time_code (0/15)*/,
10403  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10404  },
10405  // -4:00 - AST 1980 May
10406  {
10407  NULL /*zone_policy*/,
10408  "AST" /*format*/,
10409  -960 /*offset_code (-14400/15)*/,
10410  0 /*offset_remainder (-14400%15)*/,
10411  0 /*delta_minutes*/,
10412  1980 /*until_year*/,
10413  5 /*until_month*/,
10414  1 /*until_day*/,
10415  0 /*until_time_code (0/15)*/,
10416  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10417  },
10418  // -3:00 - -03 1987
10419  {
10420  NULL /*zone_policy*/,
10421  "-03" /*format*/,
10422  -720 /*offset_code (-10800/15)*/,
10423  0 /*offset_remainder (-10800%15)*/,
10424  0 /*delta_minutes*/,
10425  1987 /*until_year*/,
10426  1 /*until_month*/,
10427  1 /*until_day*/,
10428  0 /*until_time_code (0/15)*/,
10429  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10430  },
10431  // -3:00 Canada -03/-02
10432  {
10433  &kAtcAllZonePolicyCanada /*zone_policy*/,
10434  "-03/-02" /*format*/,
10435  -720 /*offset_code (-10800/15)*/,
10436  0 /*offset_remainder (-10800%15)*/,
10437  0 /*delta_minutes*/,
10438  32767 /*until_year*/,
10439  1 /*until_month*/,
10440  1 /*until_day*/,
10441  0 /*until_time_code (0/15)*/,
10442  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10443  },
10444 
10445 };
10446 
10447 static const char kAtcZoneNameAmerica_Miquelon[] = "America/Miquelon";
10448 
10449 const AtcZoneInfo kAtcAllZoneAmerica_Miquelon = {
10450  kAtcZoneNameAmerica_Miquelon /*name*/,
10451  0x59674330 /*zone_id*/,
10452  &kAtcAllZoneContext /*zone_context*/,
10453  4 /*num_eras*/,
10454  kAtcZoneEraAmerica_Miquelon /*eras*/,
10455  NULL /*target_info*/,
10456 };
10457 
10458 //---------------------------------------------------------------------------
10459 // Zone name: America/Moncton
10460 // Zone Eras: 9
10461 //---------------------------------------------------------------------------
10462 
10463 static const AtcZoneEra kAtcZoneEraAmerica_Moncton[] = {
10464  // -4:19:08 - LMT 1883 Dec 9
10465  {
10466  NULL /*zone_policy*/,
10467  "LMT" /*format*/,
10468  -1037 /*offset_code (-15548/15)*/,
10469  7 /*offset_remainder (-15548%15)*/,
10470  0 /*delta_minutes*/,
10471  1883 /*until_year*/,
10472  12 /*until_month*/,
10473  9 /*until_day*/,
10474  0 /*until_time_code (0/15)*/,
10475  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10476  },
10477  // -5:00 - EST 1902 Jun 15
10478  {
10479  NULL /*zone_policy*/,
10480  "EST" /*format*/,
10481  -1200 /*offset_code (-18000/15)*/,
10482  0 /*offset_remainder (-18000%15)*/,
10483  0 /*delta_minutes*/,
10484  1902 /*until_year*/,
10485  6 /*until_month*/,
10486  15 /*until_day*/,
10487  0 /*until_time_code (0/15)*/,
10488  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10489  },
10490  // -4:00 Canada A%sT 1933
10491  {
10492  &kAtcAllZonePolicyCanada /*zone_policy*/,
10493  "A%T" /*format*/,
10494  -960 /*offset_code (-14400/15)*/,
10495  0 /*offset_remainder (-14400%15)*/,
10496  0 /*delta_minutes*/,
10497  1933 /*until_year*/,
10498  1 /*until_month*/,
10499  1 /*until_day*/,
10500  0 /*until_time_code (0/15)*/,
10501  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10502  },
10503  // -4:00 Moncton A%sT 1942
10504  {
10505  &kAtcAllZonePolicyMoncton /*zone_policy*/,
10506  "A%T" /*format*/,
10507  -960 /*offset_code (-14400/15)*/,
10508  0 /*offset_remainder (-14400%15)*/,
10509  0 /*delta_minutes*/,
10510  1942 /*until_year*/,
10511  1 /*until_month*/,
10512  1 /*until_day*/,
10513  0 /*until_time_code (0/15)*/,
10514  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10515  },
10516  // -4:00 Canada A%sT 1946
10517  {
10518  &kAtcAllZonePolicyCanada /*zone_policy*/,
10519  "A%T" /*format*/,
10520  -960 /*offset_code (-14400/15)*/,
10521  0 /*offset_remainder (-14400%15)*/,
10522  0 /*delta_minutes*/,
10523  1946 /*until_year*/,
10524  1 /*until_month*/,
10525  1 /*until_day*/,
10526  0 /*until_time_code (0/15)*/,
10527  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10528  },
10529  // -4:00 Moncton A%sT 1973
10530  {
10531  &kAtcAllZonePolicyMoncton /*zone_policy*/,
10532  "A%T" /*format*/,
10533  -960 /*offset_code (-14400/15)*/,
10534  0 /*offset_remainder (-14400%15)*/,
10535  0 /*delta_minutes*/,
10536  1973 /*until_year*/,
10537  1 /*until_month*/,
10538  1 /*until_day*/,
10539  0 /*until_time_code (0/15)*/,
10540  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10541  },
10542  // -4:00 Canada A%sT 1993
10543  {
10544  &kAtcAllZonePolicyCanada /*zone_policy*/,
10545  "A%T" /*format*/,
10546  -960 /*offset_code (-14400/15)*/,
10547  0 /*offset_remainder (-14400%15)*/,
10548  0 /*delta_minutes*/,
10549  1993 /*until_year*/,
10550  1 /*until_month*/,
10551  1 /*until_day*/,
10552  0 /*until_time_code (0/15)*/,
10553  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10554  },
10555  // -4:00 Moncton A%sT 2007
10556  {
10557  &kAtcAllZonePolicyMoncton /*zone_policy*/,
10558  "A%T" /*format*/,
10559  -960 /*offset_code (-14400/15)*/,
10560  0 /*offset_remainder (-14400%15)*/,
10561  0 /*delta_minutes*/,
10562  2007 /*until_year*/,
10563  1 /*until_month*/,
10564  1 /*until_day*/,
10565  0 /*until_time_code (0/15)*/,
10566  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10567  },
10568  // -4:00 Canada A%sT
10569  {
10570  &kAtcAllZonePolicyCanada /*zone_policy*/,
10571  "A%T" /*format*/,
10572  -960 /*offset_code (-14400/15)*/,
10573  0 /*offset_remainder (-14400%15)*/,
10574  0 /*delta_minutes*/,
10575  32767 /*until_year*/,
10576  1 /*until_month*/,
10577  1 /*until_day*/,
10578  0 /*until_time_code (0/15)*/,
10579  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10580  },
10581 
10582 };
10583 
10584 static const char kAtcZoneNameAmerica_Moncton[] = "America/Moncton";
10585 
10586 const AtcZoneInfo kAtcAllZoneAmerica_Moncton = {
10587  kAtcZoneNameAmerica_Moncton /*name*/,
10588  0x5e07fe24 /*zone_id*/,
10589  &kAtcAllZoneContext /*zone_context*/,
10590  9 /*num_eras*/,
10591  kAtcZoneEraAmerica_Moncton /*eras*/,
10592  NULL /*target_info*/,
10593 };
10594 
10595 //---------------------------------------------------------------------------
10596 // Zone name: America/Monterrey
10597 // Zone Eras: 4
10598 //---------------------------------------------------------------------------
10599 
10600 static const AtcZoneEra kAtcZoneEraAmerica_Monterrey[] = {
10601  // -6:41:16 - LMT 1922 Jan 1 6:00u
10602  {
10603  NULL /*zone_policy*/,
10604  "LMT" /*format*/,
10605  -1606 /*offset_code (-24076/15)*/,
10606  14 /*offset_remainder (-24076%15)*/,
10607  0 /*delta_minutes*/,
10608  1922 /*until_year*/,
10609  1 /*until_month*/,
10610  1 /*until_day*/,
10611  1440 /*until_time_code (21600/15)*/,
10612  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
10613  },
10614  // -6:00 - CST 1988
10615  {
10616  NULL /*zone_policy*/,
10617  "CST" /*format*/,
10618  -1440 /*offset_code (-21600/15)*/,
10619  0 /*offset_remainder (-21600%15)*/,
10620  0 /*delta_minutes*/,
10621  1988 /*until_year*/,
10622  1 /*until_month*/,
10623  1 /*until_day*/,
10624  0 /*until_time_code (0/15)*/,
10625  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10626  },
10627  // -6:00 US C%sT 1989
10628  {
10629  &kAtcAllZonePolicyUS /*zone_policy*/,
10630  "C%T" /*format*/,
10631  -1440 /*offset_code (-21600/15)*/,
10632  0 /*offset_remainder (-21600%15)*/,
10633  0 /*delta_minutes*/,
10634  1989 /*until_year*/,
10635  1 /*until_month*/,
10636  1 /*until_day*/,
10637  0 /*until_time_code (0/15)*/,
10638  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10639  },
10640  // -6:00 Mexico C%sT
10641  {
10642  &kAtcAllZonePolicyMexico /*zone_policy*/,
10643  "C%T" /*format*/,
10644  -1440 /*offset_code (-21600/15)*/,
10645  0 /*offset_remainder (-21600%15)*/,
10646  0 /*delta_minutes*/,
10647  32767 /*until_year*/,
10648  1 /*until_month*/,
10649  1 /*until_day*/,
10650  0 /*until_time_code (0/15)*/,
10651  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10652  },
10653 
10654 };
10655 
10656 static const char kAtcZoneNameAmerica_Monterrey[] = "America/Monterrey";
10657 
10658 const AtcZoneInfo kAtcAllZoneAmerica_Monterrey = {
10659  kAtcZoneNameAmerica_Monterrey /*name*/,
10660  0x269a1deb /*zone_id*/,
10661  &kAtcAllZoneContext /*zone_context*/,
10662  4 /*num_eras*/,
10663  kAtcZoneEraAmerica_Monterrey /*eras*/,
10664  NULL /*target_info*/,
10665 };
10666 
10667 //---------------------------------------------------------------------------
10668 // Zone name: America/Montevideo
10669 // Zone Eras: 11
10670 //---------------------------------------------------------------------------
10671 
10672 static const AtcZoneEra kAtcZoneEraAmerica_Montevideo[] = {
10673  // -3:44:51 - LMT 1908 Jun 10
10674  {
10675  NULL /*zone_policy*/,
10676  "LMT" /*format*/,
10677  -900 /*offset_code (-13491/15)*/,
10678  9 /*offset_remainder (-13491%15)*/,
10679  0 /*delta_minutes*/,
10680  1908 /*until_year*/,
10681  6 /*until_month*/,
10682  10 /*until_day*/,
10683  0 /*until_time_code (0/15)*/,
10684  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10685  },
10686  // -3:44:51 - MMT 1920 May 1
10687  {
10688  NULL /*zone_policy*/,
10689  "MMT" /*format*/,
10690  -900 /*offset_code (-13491/15)*/,
10691  9 /*offset_remainder (-13491%15)*/,
10692  0 /*delta_minutes*/,
10693  1920 /*until_year*/,
10694  5 /*until_month*/,
10695  1 /*until_day*/,
10696  0 /*until_time_code (0/15)*/,
10697  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10698  },
10699  // -4:00 - -04 1923 Oct 1
10700  {
10701  NULL /*zone_policy*/,
10702  "-04" /*format*/,
10703  -960 /*offset_code (-14400/15)*/,
10704  0 /*offset_remainder (-14400%15)*/,
10705  0 /*delta_minutes*/,
10706  1923 /*until_year*/,
10707  10 /*until_month*/,
10708  1 /*until_day*/,
10709  0 /*until_time_code (0/15)*/,
10710  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10711  },
10712  // -3:30 Uruguay -0330/-03 1942 Dec 14
10713  {
10714  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10715  "-0330/-03" /*format*/,
10716  -840 /*offset_code (-12600/15)*/,
10717  0 /*offset_remainder (-12600%15)*/,
10718  0 /*delta_minutes*/,
10719  1942 /*until_year*/,
10720  12 /*until_month*/,
10721  14 /*until_day*/,
10722  0 /*until_time_code (0/15)*/,
10723  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10724  },
10725  // -3:00 Uruguay -03/-0230 1960
10726  {
10727  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10728  "-03/-0230" /*format*/,
10729  -720 /*offset_code (-10800/15)*/,
10730  0 /*offset_remainder (-10800%15)*/,
10731  0 /*delta_minutes*/,
10732  1960 /*until_year*/,
10733  1 /*until_month*/,
10734  1 /*until_day*/,
10735  0 /*until_time_code (0/15)*/,
10736  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10737  },
10738  // -3:00 Uruguay -03/-02 1968
10739  {
10740  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10741  "-03/-02" /*format*/,
10742  -720 /*offset_code (-10800/15)*/,
10743  0 /*offset_remainder (-10800%15)*/,
10744  0 /*delta_minutes*/,
10745  1968 /*until_year*/,
10746  1 /*until_month*/,
10747  1 /*until_day*/,
10748  0 /*until_time_code (0/15)*/,
10749  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10750  },
10751  // -3:00 Uruguay -03/-0230 1970
10752  {
10753  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10754  "-03/-0230" /*format*/,
10755  -720 /*offset_code (-10800/15)*/,
10756  0 /*offset_remainder (-10800%15)*/,
10757  0 /*delta_minutes*/,
10758  1970 /*until_year*/,
10759  1 /*until_month*/,
10760  1 /*until_day*/,
10761  0 /*until_time_code (0/15)*/,
10762  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10763  },
10764  // -3:00 Uruguay -03/-02 1974
10765  {
10766  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10767  "-03/-02" /*format*/,
10768  -720 /*offset_code (-10800/15)*/,
10769  0 /*offset_remainder (-10800%15)*/,
10770  0 /*delta_minutes*/,
10771  1974 /*until_year*/,
10772  1 /*until_month*/,
10773  1 /*until_day*/,
10774  0 /*until_time_code (0/15)*/,
10775  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10776  },
10777  // -3:00 Uruguay -03/-0130 1974 Mar 10
10778  {
10779  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10780  "-03/-0130" /*format*/,
10781  -720 /*offset_code (-10800/15)*/,
10782  0 /*offset_remainder (-10800%15)*/,
10783  0 /*delta_minutes*/,
10784  1974 /*until_year*/,
10785  3 /*until_month*/,
10786  10 /*until_day*/,
10787  0 /*until_time_code (0/15)*/,
10788  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10789  },
10790  // -3:00 Uruguay -03/-0230 1974 Dec 22
10791  {
10792  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10793  "-03/-0230" /*format*/,
10794  -720 /*offset_code (-10800/15)*/,
10795  0 /*offset_remainder (-10800%15)*/,
10796  0 /*delta_minutes*/,
10797  1974 /*until_year*/,
10798  12 /*until_month*/,
10799  22 /*until_day*/,
10800  0 /*until_time_code (0/15)*/,
10801  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10802  },
10803  // -3:00 Uruguay -03/-02
10804  {
10805  &kAtcAllZonePolicyUruguay /*zone_policy*/,
10806  "-03/-02" /*format*/,
10807  -720 /*offset_code (-10800/15)*/,
10808  0 /*offset_remainder (-10800%15)*/,
10809  0 /*delta_minutes*/,
10810  32767 /*until_year*/,
10811  1 /*until_month*/,
10812  1 /*until_day*/,
10813  0 /*until_time_code (0/15)*/,
10814  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10815  },
10816 
10817 };
10818 
10819 static const char kAtcZoneNameAmerica_Montevideo[] = "America/Montevideo";
10820 
10821 const AtcZoneInfo kAtcAllZoneAmerica_Montevideo = {
10822  kAtcZoneNameAmerica_Montevideo /*name*/,
10823  0xfa214780 /*zone_id*/,
10824  &kAtcAllZoneContext /*zone_context*/,
10825  11 /*num_eras*/,
10826  kAtcZoneEraAmerica_Montevideo /*eras*/,
10827  NULL /*target_info*/,
10828 };
10829 
10830 //---------------------------------------------------------------------------
10831 // Zone name: America/New_York
10832 // Zone Eras: 6
10833 //---------------------------------------------------------------------------
10834 
10835 static const AtcZoneEra kAtcZoneEraAmerica_New_York[] = {
10836  // -4:56:02 - LMT 1883 Nov 18 17:00u
10837  {
10838  NULL /*zone_policy*/,
10839  "LMT" /*format*/,
10840  -1185 /*offset_code (-17762/15)*/,
10841  13 /*offset_remainder (-17762%15)*/,
10842  0 /*delta_minutes*/,
10843  1883 /*until_year*/,
10844  11 /*until_month*/,
10845  18 /*until_day*/,
10846  4080 /*until_time_code (61200/15)*/,
10847  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
10848  },
10849  // -5:00 US E%sT 1920
10850  {
10851  &kAtcAllZonePolicyUS /*zone_policy*/,
10852  "E%T" /*format*/,
10853  -1200 /*offset_code (-18000/15)*/,
10854  0 /*offset_remainder (-18000%15)*/,
10855  0 /*delta_minutes*/,
10856  1920 /*until_year*/,
10857  1 /*until_month*/,
10858  1 /*until_day*/,
10859  0 /*until_time_code (0/15)*/,
10860  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10861  },
10862  // -5:00 NYC E%sT 1942
10863  {
10864  &kAtcAllZonePolicyNYC /*zone_policy*/,
10865  "E%T" /*format*/,
10866  -1200 /*offset_code (-18000/15)*/,
10867  0 /*offset_remainder (-18000%15)*/,
10868  0 /*delta_minutes*/,
10869  1942 /*until_year*/,
10870  1 /*until_month*/,
10871  1 /*until_day*/,
10872  0 /*until_time_code (0/15)*/,
10873  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10874  },
10875  // -5:00 US E%sT 1946
10876  {
10877  &kAtcAllZonePolicyUS /*zone_policy*/,
10878  "E%T" /*format*/,
10879  -1200 /*offset_code (-18000/15)*/,
10880  0 /*offset_remainder (-18000%15)*/,
10881  0 /*delta_minutes*/,
10882  1946 /*until_year*/,
10883  1 /*until_month*/,
10884  1 /*until_day*/,
10885  0 /*until_time_code (0/15)*/,
10886  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10887  },
10888  // -5:00 NYC E%sT 1967
10889  {
10890  &kAtcAllZonePolicyNYC /*zone_policy*/,
10891  "E%T" /*format*/,
10892  -1200 /*offset_code (-18000/15)*/,
10893  0 /*offset_remainder (-18000%15)*/,
10894  0 /*delta_minutes*/,
10895  1967 /*until_year*/,
10896  1 /*until_month*/,
10897  1 /*until_day*/,
10898  0 /*until_time_code (0/15)*/,
10899  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10900  },
10901  // -5:00 US E%sT
10902  {
10903  &kAtcAllZonePolicyUS /*zone_policy*/,
10904  "E%T" /*format*/,
10905  -1200 /*offset_code (-18000/15)*/,
10906  0 /*offset_remainder (-18000%15)*/,
10907  0 /*delta_minutes*/,
10908  32767 /*until_year*/,
10909  1 /*until_month*/,
10910  1 /*until_day*/,
10911  0 /*until_time_code (0/15)*/,
10912  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10913  },
10914 
10915 };
10916 
10917 static const char kAtcZoneNameAmerica_New_York[] = "America/New_York";
10918 
10919 const AtcZoneInfo kAtcAllZoneAmerica_New_York = {
10920  kAtcZoneNameAmerica_New_York /*name*/,
10921  0x1e2a7654 /*zone_id*/,
10922  &kAtcAllZoneContext /*zone_context*/,
10923  6 /*num_eras*/,
10924  kAtcZoneEraAmerica_New_York /*eras*/,
10925  NULL /*target_info*/,
10926 };
10927 
10928 //---------------------------------------------------------------------------
10929 // Zone name: America/Nome
10930 // Zone Eras: 9
10931 //---------------------------------------------------------------------------
10932 
10933 static const AtcZoneEra kAtcZoneEraAmerica_Nome[] = {
10934  // 12:58:22 - LMT 1867 Oct 19 13:29:35
10935  {
10936  NULL /*zone_policy*/,
10937  "LMT" /*format*/,
10938  3113 /*offset_code (46702/15)*/,
10939  7 /*offset_remainder (46702%15)*/,
10940  0 /*delta_minutes*/,
10941  1867 /*until_year*/,
10942  10 /*until_month*/,
10943  19 /*until_day*/,
10944  3238 /*until_time_code (48575/15)*/,
10945  5 /*until_time_modifier (kAtcSuffixW + seconds=5)*/,
10946  },
10947  // -11:01:38 - LMT 1900 Aug 20 12:00
10948  {
10949  NULL /*zone_policy*/,
10950  "LMT" /*format*/,
10951  -2647 /*offset_code (-39698/15)*/,
10952  7 /*offset_remainder (-39698%15)*/,
10953  0 /*delta_minutes*/,
10954  1900 /*until_year*/,
10955  8 /*until_month*/,
10956  20 /*until_day*/,
10957  2880 /*until_time_code (43200/15)*/,
10958  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10959  },
10960  // -11:00 - NST 1942
10961  {
10962  NULL /*zone_policy*/,
10963  "NST" /*format*/,
10964  -2640 /*offset_code (-39600/15)*/,
10965  0 /*offset_remainder (-39600%15)*/,
10966  0 /*delta_minutes*/,
10967  1942 /*until_year*/,
10968  1 /*until_month*/,
10969  1 /*until_day*/,
10970  0 /*until_time_code (0/15)*/,
10971  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10972  },
10973  // -11:00 US N%sT 1946
10974  {
10975  &kAtcAllZonePolicyUS /*zone_policy*/,
10976  "N%T" /*format*/,
10977  -2640 /*offset_code (-39600/15)*/,
10978  0 /*offset_remainder (-39600%15)*/,
10979  0 /*delta_minutes*/,
10980  1946 /*until_year*/,
10981  1 /*until_month*/,
10982  1 /*until_day*/,
10983  0 /*until_time_code (0/15)*/,
10984  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10985  },
10986  // -11:00 - NST 1967 Apr
10987  {
10988  NULL /*zone_policy*/,
10989  "NST" /*format*/,
10990  -2640 /*offset_code (-39600/15)*/,
10991  0 /*offset_remainder (-39600%15)*/,
10992  0 /*delta_minutes*/,
10993  1967 /*until_year*/,
10994  4 /*until_month*/,
10995  1 /*until_day*/,
10996  0 /*until_time_code (0/15)*/,
10997  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
10998  },
10999  // -11:00 - BST 1969
11000  {
11001  NULL /*zone_policy*/,
11002  "BST" /*format*/,
11003  -2640 /*offset_code (-39600/15)*/,
11004  0 /*offset_remainder (-39600%15)*/,
11005  0 /*delta_minutes*/,
11006  1969 /*until_year*/,
11007  1 /*until_month*/,
11008  1 /*until_day*/,
11009  0 /*until_time_code (0/15)*/,
11010  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11011  },
11012  // -11:00 US B%sT 1983 Oct 30 2:00
11013  {
11014  &kAtcAllZonePolicyUS /*zone_policy*/,
11015  "B%T" /*format*/,
11016  -2640 /*offset_code (-39600/15)*/,
11017  0 /*offset_remainder (-39600%15)*/,
11018  0 /*delta_minutes*/,
11019  1983 /*until_year*/,
11020  10 /*until_month*/,
11021  30 /*until_day*/,
11022  480 /*until_time_code (7200/15)*/,
11023  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11024  },
11025  // -9:00 US Y%sT 1983 Nov 30
11026  {
11027  &kAtcAllZonePolicyUS /*zone_policy*/,
11028  "Y%T" /*format*/,
11029  -2160 /*offset_code (-32400/15)*/,
11030  0 /*offset_remainder (-32400%15)*/,
11031  0 /*delta_minutes*/,
11032  1983 /*until_year*/,
11033  11 /*until_month*/,
11034  30 /*until_day*/,
11035  0 /*until_time_code (0/15)*/,
11036  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11037  },
11038  // -9:00 US AK%sT
11039  {
11040  &kAtcAllZonePolicyUS /*zone_policy*/,
11041  "AK%T" /*format*/,
11042  -2160 /*offset_code (-32400/15)*/,
11043  0 /*offset_remainder (-32400%15)*/,
11044  0 /*delta_minutes*/,
11045  32767 /*until_year*/,
11046  1 /*until_month*/,
11047  1 /*until_day*/,
11048  0 /*until_time_code (0/15)*/,
11049  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11050  },
11051 
11052 };
11053 
11054 static const char kAtcZoneNameAmerica_Nome[] = "America/Nome";
11055 
11056 const AtcZoneInfo kAtcAllZoneAmerica_Nome = {
11057  kAtcZoneNameAmerica_Nome /*name*/,
11058  0x98059b15 /*zone_id*/,
11059  &kAtcAllZoneContext /*zone_context*/,
11060  9 /*num_eras*/,
11061  kAtcZoneEraAmerica_Nome /*eras*/,
11062  NULL /*target_info*/,
11063 };
11064 
11065 //---------------------------------------------------------------------------
11066 // Zone name: America/Noronha
11067 // Zone Eras: 7
11068 //---------------------------------------------------------------------------
11069 
11070 static const AtcZoneEra kAtcZoneEraAmerica_Noronha[] = {
11071  // -2:09:40 - LMT 1914
11072  {
11073  NULL /*zone_policy*/,
11074  "LMT" /*format*/,
11075  -519 /*offset_code (-7780/15)*/,
11076  5 /*offset_remainder (-7780%15)*/,
11077  0 /*delta_minutes*/,
11078  1914 /*until_year*/,
11079  1 /*until_month*/,
11080  1 /*until_day*/,
11081  0 /*until_time_code (0/15)*/,
11082  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11083  },
11084  // -2:00 Brazil -02/-01 1990 Sep 17
11085  {
11086  &kAtcAllZonePolicyBrazil /*zone_policy*/,
11087  "-02/-01" /*format*/,
11088  -480 /*offset_code (-7200/15)*/,
11089  0 /*offset_remainder (-7200%15)*/,
11090  0 /*delta_minutes*/,
11091  1990 /*until_year*/,
11092  9 /*until_month*/,
11093  17 /*until_day*/,
11094  0 /*until_time_code (0/15)*/,
11095  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11096  },
11097  // -2:00 - -02 1999 Sep 30
11098  {
11099  NULL /*zone_policy*/,
11100  "-02" /*format*/,
11101  -480 /*offset_code (-7200/15)*/,
11102  0 /*offset_remainder (-7200%15)*/,
11103  0 /*delta_minutes*/,
11104  1999 /*until_year*/,
11105  9 /*until_month*/,
11106  30 /*until_day*/,
11107  0 /*until_time_code (0/15)*/,
11108  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11109  },
11110  // -2:00 Brazil -02/-01 2000 Oct 15
11111  {
11112  &kAtcAllZonePolicyBrazil /*zone_policy*/,
11113  "-02/-01" /*format*/,
11114  -480 /*offset_code (-7200/15)*/,
11115  0 /*offset_remainder (-7200%15)*/,
11116  0 /*delta_minutes*/,
11117  2000 /*until_year*/,
11118  10 /*until_month*/,
11119  15 /*until_day*/,
11120  0 /*until_time_code (0/15)*/,
11121  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11122  },
11123  // -2:00 - -02 2001 Sep 13
11124  {
11125  NULL /*zone_policy*/,
11126  "-02" /*format*/,
11127  -480 /*offset_code (-7200/15)*/,
11128  0 /*offset_remainder (-7200%15)*/,
11129  0 /*delta_minutes*/,
11130  2001 /*until_year*/,
11131  9 /*until_month*/,
11132  13 /*until_day*/,
11133  0 /*until_time_code (0/15)*/,
11134  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11135  },
11136  // -2:00 Brazil -02/-01 2002 Oct 1
11137  {
11138  &kAtcAllZonePolicyBrazil /*zone_policy*/,
11139  "-02/-01" /*format*/,
11140  -480 /*offset_code (-7200/15)*/,
11141  0 /*offset_remainder (-7200%15)*/,
11142  0 /*delta_minutes*/,
11143  2002 /*until_year*/,
11144  10 /*until_month*/,
11145  1 /*until_day*/,
11146  0 /*until_time_code (0/15)*/,
11147  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11148  },
11149  // -2:00 - -02
11150  {
11151  NULL /*zone_policy*/,
11152  "-02" /*format*/,
11153  -480 /*offset_code (-7200/15)*/,
11154  0 /*offset_remainder (-7200%15)*/,
11155  0 /*delta_minutes*/,
11156  32767 /*until_year*/,
11157  1 /*until_month*/,
11158  1 /*until_day*/,
11159  0 /*until_time_code (0/15)*/,
11160  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11161  },
11162 
11163 };
11164 
11165 static const char kAtcZoneNameAmerica_Noronha[] = "America/Noronha";
11166 
11167 const AtcZoneInfo kAtcAllZoneAmerica_Noronha = {
11168  kAtcZoneNameAmerica_Noronha /*name*/,
11169  0xab5116fb /*zone_id*/,
11170  &kAtcAllZoneContext /*zone_context*/,
11171  7 /*num_eras*/,
11172  kAtcZoneEraAmerica_Noronha /*eras*/,
11173  NULL /*target_info*/,
11174 };
11175 
11176 //---------------------------------------------------------------------------
11177 // Zone name: America/North_Dakota/Beulah
11178 // Zone Eras: 3
11179 //---------------------------------------------------------------------------
11180 
11181 static const AtcZoneEra kAtcZoneEraAmerica_North_Dakota_Beulah[] = {
11182  // -6:47:07 - LMT 1883 Nov 18 19:00u
11183  {
11184  NULL /*zone_policy*/,
11185  "LMT" /*format*/,
11186  -1629 /*offset_code (-24427/15)*/,
11187  8 /*offset_remainder (-24427%15)*/,
11188  0 /*delta_minutes*/,
11189  1883 /*until_year*/,
11190  11 /*until_month*/,
11191  18 /*until_day*/,
11192  4560 /*until_time_code (68400/15)*/,
11193  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
11194  },
11195  // -7:00 US M%sT 2010 Nov 7 2:00
11196  {
11197  &kAtcAllZonePolicyUS /*zone_policy*/,
11198  "M%T" /*format*/,
11199  -1680 /*offset_code (-25200/15)*/,
11200  0 /*offset_remainder (-25200%15)*/,
11201  0 /*delta_minutes*/,
11202  2010 /*until_year*/,
11203  11 /*until_month*/,
11204  7 /*until_day*/,
11205  480 /*until_time_code (7200/15)*/,
11206  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11207  },
11208  // -6:00 US C%sT
11209  {
11210  &kAtcAllZonePolicyUS /*zone_policy*/,
11211  "C%T" /*format*/,
11212  -1440 /*offset_code (-21600/15)*/,
11213  0 /*offset_remainder (-21600%15)*/,
11214  0 /*delta_minutes*/,
11215  32767 /*until_year*/,
11216  1 /*until_month*/,
11217  1 /*until_day*/,
11218  0 /*until_time_code (0/15)*/,
11219  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11220  },
11221 
11222 };
11223 
11224 static const char kAtcZoneNameAmerica_North_Dakota_Beulah[] = "America/North_Dakota/Beulah";
11225 
11226 const AtcZoneInfo kAtcAllZoneAmerica_North_Dakota_Beulah = {
11227  kAtcZoneNameAmerica_North_Dakota_Beulah /*name*/,
11228  0x9b52b384 /*zone_id*/,
11229  &kAtcAllZoneContext /*zone_context*/,
11230  3 /*num_eras*/,
11231  kAtcZoneEraAmerica_North_Dakota_Beulah /*eras*/,
11232  NULL /*target_info*/,
11233 };
11234 
11235 //---------------------------------------------------------------------------
11236 // Zone name: America/North_Dakota/Center
11237 // Zone Eras: 3
11238 //---------------------------------------------------------------------------
11239 
11240 static const AtcZoneEra kAtcZoneEraAmerica_North_Dakota_Center[] = {
11241  // -6:45:12 - LMT 1883 Nov 18 19:00u
11242  {
11243  NULL /*zone_policy*/,
11244  "LMT" /*format*/,
11245  -1621 /*offset_code (-24312/15)*/,
11246  3 /*offset_remainder (-24312%15)*/,
11247  0 /*delta_minutes*/,
11248  1883 /*until_year*/,
11249  11 /*until_month*/,
11250  18 /*until_day*/,
11251  4560 /*until_time_code (68400/15)*/,
11252  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
11253  },
11254  // -7:00 US M%sT 1992 Oct 25 2:00
11255  {
11256  &kAtcAllZonePolicyUS /*zone_policy*/,
11257  "M%T" /*format*/,
11258  -1680 /*offset_code (-25200/15)*/,
11259  0 /*offset_remainder (-25200%15)*/,
11260  0 /*delta_minutes*/,
11261  1992 /*until_year*/,
11262  10 /*until_month*/,
11263  25 /*until_day*/,
11264  480 /*until_time_code (7200/15)*/,
11265  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11266  },
11267  // -6:00 US C%sT
11268  {
11269  &kAtcAllZonePolicyUS /*zone_policy*/,
11270  "C%T" /*format*/,
11271  -1440 /*offset_code (-21600/15)*/,
11272  0 /*offset_remainder (-21600%15)*/,
11273  0 /*delta_minutes*/,
11274  32767 /*until_year*/,
11275  1 /*until_month*/,
11276  1 /*until_day*/,
11277  0 /*until_time_code (0/15)*/,
11278  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11279  },
11280 
11281 };
11282 
11283 static const char kAtcZoneNameAmerica_North_Dakota_Center[] = "America/North_Dakota/Center";
11284 
11285 const AtcZoneInfo kAtcAllZoneAmerica_North_Dakota_Center = {
11286  kAtcZoneNameAmerica_North_Dakota_Center /*name*/,
11287  0x9da42814 /*zone_id*/,
11288  &kAtcAllZoneContext /*zone_context*/,
11289  3 /*num_eras*/,
11290  kAtcZoneEraAmerica_North_Dakota_Center /*eras*/,
11291  NULL /*target_info*/,
11292 };
11293 
11294 //---------------------------------------------------------------------------
11295 // Zone name: America/North_Dakota/New_Salem
11296 // Zone Eras: 3
11297 //---------------------------------------------------------------------------
11298 
11299 static const AtcZoneEra kAtcZoneEraAmerica_North_Dakota_New_Salem[] = {
11300  // -6:45:39 - LMT 1883 Nov 18 19:00u
11301  {
11302  NULL /*zone_policy*/,
11303  "LMT" /*format*/,
11304  -1623 /*offset_code (-24339/15)*/,
11305  6 /*offset_remainder (-24339%15)*/,
11306  0 /*delta_minutes*/,
11307  1883 /*until_year*/,
11308  11 /*until_month*/,
11309  18 /*until_day*/,
11310  4560 /*until_time_code (68400/15)*/,
11311  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
11312  },
11313  // -7:00 US M%sT 2003 Oct 26 2:00
11314  {
11315  &kAtcAllZonePolicyUS /*zone_policy*/,
11316  "M%T" /*format*/,
11317  -1680 /*offset_code (-25200/15)*/,
11318  0 /*offset_remainder (-25200%15)*/,
11319  0 /*delta_minutes*/,
11320  2003 /*until_year*/,
11321  10 /*until_month*/,
11322  26 /*until_day*/,
11323  480 /*until_time_code (7200/15)*/,
11324  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11325  },
11326  // -6:00 US C%sT
11327  {
11328  &kAtcAllZonePolicyUS /*zone_policy*/,
11329  "C%T" /*format*/,
11330  -1440 /*offset_code (-21600/15)*/,
11331  0 /*offset_remainder (-21600%15)*/,
11332  0 /*delta_minutes*/,
11333  32767 /*until_year*/,
11334  1 /*until_month*/,
11335  1 /*until_day*/,
11336  0 /*until_time_code (0/15)*/,
11337  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11338  },
11339 
11340 };
11341 
11342 static const char kAtcZoneNameAmerica_North_Dakota_New_Salem[] = "America/North_Dakota/New_Salem";
11343 
11344 const AtcZoneInfo kAtcAllZoneAmerica_North_Dakota_New_Salem = {
11345  kAtcZoneNameAmerica_North_Dakota_New_Salem /*name*/,
11346  0x04f9958e /*zone_id*/,
11347  &kAtcAllZoneContext /*zone_context*/,
11348  3 /*num_eras*/,
11349  kAtcZoneEraAmerica_North_Dakota_New_Salem /*eras*/,
11350  NULL /*target_info*/,
11351 };
11352 
11353 //---------------------------------------------------------------------------
11354 // Zone name: America/Nuuk
11355 // Zone Eras: 4
11356 //---------------------------------------------------------------------------
11357 
11358 static const AtcZoneEra kAtcZoneEraAmerica_Nuuk[] = {
11359  // -3:26:56 - LMT 1916 Jul 28
11360  {
11361  NULL /*zone_policy*/,
11362  "LMT" /*format*/,
11363  -828 /*offset_code (-12416/15)*/,
11364  4 /*offset_remainder (-12416%15)*/,
11365  0 /*delta_minutes*/,
11366  1916 /*until_year*/,
11367  7 /*until_month*/,
11368  28 /*until_day*/,
11369  0 /*until_time_code (0/15)*/,
11370  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11371  },
11372  // -3:00 - -03 1980 Apr 6 2:00
11373  {
11374  NULL /*zone_policy*/,
11375  "-03" /*format*/,
11376  -720 /*offset_code (-10800/15)*/,
11377  0 /*offset_remainder (-10800%15)*/,
11378  0 /*delta_minutes*/,
11379  1980 /*until_year*/,
11380  4 /*until_month*/,
11381  6 /*until_day*/,
11382  480 /*until_time_code (7200/15)*/,
11383  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11384  },
11385  // -3:00 EU -03/-02 2023 Oct 29 1:00u
11386  {
11387  &kAtcAllZonePolicyEU /*zone_policy*/,
11388  "-03/-02" /*format*/,
11389  -720 /*offset_code (-10800/15)*/,
11390  0 /*offset_remainder (-10800%15)*/,
11391  0 /*delta_minutes*/,
11392  2023 /*until_year*/,
11393  10 /*until_month*/,
11394  29 /*until_day*/,
11395  240 /*until_time_code (3600/15)*/,
11396  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
11397  },
11398  // -2:00 EU -02/-01
11399  {
11400  &kAtcAllZonePolicyEU /*zone_policy*/,
11401  "-02/-01" /*format*/,
11402  -480 /*offset_code (-7200/15)*/,
11403  0 /*offset_remainder (-7200%15)*/,
11404  0 /*delta_minutes*/,
11405  32767 /*until_year*/,
11406  1 /*until_month*/,
11407  1 /*until_day*/,
11408  0 /*until_time_code (0/15)*/,
11409  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11410  },
11411 
11412 };
11413 
11414 static const char kAtcZoneNameAmerica_Nuuk[] = "America/Nuuk";
11415 
11416 const AtcZoneInfo kAtcAllZoneAmerica_Nuuk = {
11417  kAtcZoneNameAmerica_Nuuk /*name*/,
11418  0x9805b5a9 /*zone_id*/,
11419  &kAtcAllZoneContext /*zone_context*/,
11420  4 /*num_eras*/,
11421  kAtcZoneEraAmerica_Nuuk /*eras*/,
11422  NULL /*target_info*/,
11423 };
11424 
11425 //---------------------------------------------------------------------------
11426 // Zone name: America/Ojinaga
11427 // Zone Eras: 11
11428 //---------------------------------------------------------------------------
11429 
11430 static const AtcZoneEra kAtcZoneEraAmerica_Ojinaga[] = {
11431  // -6:57:40 - LMT 1922 Jan 1 7:00u
11432  {
11433  NULL /*zone_policy*/,
11434  "LMT" /*format*/,
11435  -1671 /*offset_code (-25060/15)*/,
11436  5 /*offset_remainder (-25060%15)*/,
11437  0 /*delta_minutes*/,
11438  1922 /*until_year*/,
11439  1 /*until_month*/,
11440  1 /*until_day*/,
11441  1680 /*until_time_code (25200/15)*/,
11442  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
11443  },
11444  // -7:00 - MST 1927 Jun 10 23:00
11445  {
11446  NULL /*zone_policy*/,
11447  "MST" /*format*/,
11448  -1680 /*offset_code (-25200/15)*/,
11449  0 /*offset_remainder (-25200%15)*/,
11450  0 /*delta_minutes*/,
11451  1927 /*until_year*/,
11452  6 /*until_month*/,
11453  10 /*until_day*/,
11454  5520 /*until_time_code (82800/15)*/,
11455  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11456  },
11457  // -6:00 - CST 1930 Nov 15
11458  {
11459  NULL /*zone_policy*/,
11460  "CST" /*format*/,
11461  -1440 /*offset_code (-21600/15)*/,
11462  0 /*offset_remainder (-21600%15)*/,
11463  0 /*delta_minutes*/,
11464  1930 /*until_year*/,
11465  11 /*until_month*/,
11466  15 /*until_day*/,
11467  0 /*until_time_code (0/15)*/,
11468  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11469  },
11470  // -7:00 Mexico M%sT 1932 Apr 1
11471  {
11472  &kAtcAllZonePolicyMexico /*zone_policy*/,
11473  "M%T" /*format*/,
11474  -1680 /*offset_code (-25200/15)*/,
11475  0 /*offset_remainder (-25200%15)*/,
11476  0 /*delta_minutes*/,
11477  1932 /*until_year*/,
11478  4 /*until_month*/,
11479  1 /*until_day*/,
11480  0 /*until_time_code (0/15)*/,
11481  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11482  },
11483  // -6:00 - CST 1996
11484  {
11485  NULL /*zone_policy*/,
11486  "CST" /*format*/,
11487  -1440 /*offset_code (-21600/15)*/,
11488  0 /*offset_remainder (-21600%15)*/,
11489  0 /*delta_minutes*/,
11490  1996 /*until_year*/,
11491  1 /*until_month*/,
11492  1 /*until_day*/,
11493  0 /*until_time_code (0/15)*/,
11494  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11495  },
11496  // -6:00 Mexico C%sT 1998
11497  {
11498  &kAtcAllZonePolicyMexico /*zone_policy*/,
11499  "C%T" /*format*/,
11500  -1440 /*offset_code (-21600/15)*/,
11501  0 /*offset_remainder (-21600%15)*/,
11502  0 /*delta_minutes*/,
11503  1998 /*until_year*/,
11504  1 /*until_month*/,
11505  1 /*until_day*/,
11506  0 /*until_time_code (0/15)*/,
11507  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11508  },
11509  // -6:00 - CST 1998 Apr Sun>=1 3:00
11510  {
11511  NULL /*zone_policy*/,
11512  "CST" /*format*/,
11513  -1440 /*offset_code (-21600/15)*/,
11514  0 /*offset_remainder (-21600%15)*/,
11515  0 /*delta_minutes*/,
11516  1998 /*until_year*/,
11517  4 /*until_month*/,
11518  5 /*until_day*/,
11519  720 /*until_time_code (10800/15)*/,
11520  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11521  },
11522  // -7:00 Mexico M%sT 2010
11523  {
11524  &kAtcAllZonePolicyMexico /*zone_policy*/,
11525  "M%T" /*format*/,
11526  -1680 /*offset_code (-25200/15)*/,
11527  0 /*offset_remainder (-25200%15)*/,
11528  0 /*delta_minutes*/,
11529  2010 /*until_year*/,
11530  1 /*until_month*/,
11531  1 /*until_day*/,
11532  0 /*until_time_code (0/15)*/,
11533  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11534  },
11535  // -7:00 US M%sT 2022 Oct 30 2:00
11536  {
11537  &kAtcAllZonePolicyUS /*zone_policy*/,
11538  "M%T" /*format*/,
11539  -1680 /*offset_code (-25200/15)*/,
11540  0 /*offset_remainder (-25200%15)*/,
11541  0 /*delta_minutes*/,
11542  2022 /*until_year*/,
11543  10 /*until_month*/,
11544  30 /*until_day*/,
11545  480 /*until_time_code (7200/15)*/,
11546  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11547  },
11548  // -6:00 - CST 2022 Nov 30 0:00
11549  {
11550  NULL /*zone_policy*/,
11551  "CST" /*format*/,
11552  -1440 /*offset_code (-21600/15)*/,
11553  0 /*offset_remainder (-21600%15)*/,
11554  0 /*delta_minutes*/,
11555  2022 /*until_year*/,
11556  11 /*until_month*/,
11557  30 /*until_day*/,
11558  0 /*until_time_code (0/15)*/,
11559  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11560  },
11561  // -6:00 US C%sT
11562  {
11563  &kAtcAllZonePolicyUS /*zone_policy*/,
11564  "C%T" /*format*/,
11565  -1440 /*offset_code (-21600/15)*/,
11566  0 /*offset_remainder (-21600%15)*/,
11567  0 /*delta_minutes*/,
11568  32767 /*until_year*/,
11569  1 /*until_month*/,
11570  1 /*until_day*/,
11571  0 /*until_time_code (0/15)*/,
11572  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11573  },
11574 
11575 };
11576 
11577 static const char kAtcZoneNameAmerica_Ojinaga[] = "America/Ojinaga";
11578 
11579 const AtcZoneInfo kAtcAllZoneAmerica_Ojinaga = {
11580  kAtcZoneNameAmerica_Ojinaga /*name*/,
11581  0xebfde83f /*zone_id*/,
11582  &kAtcAllZoneContext /*zone_context*/,
11583  11 /*num_eras*/,
11584  kAtcZoneEraAmerica_Ojinaga /*eras*/,
11585  NULL /*target_info*/,
11586 };
11587 
11588 //---------------------------------------------------------------------------
11589 // Zone name: America/Panama
11590 // Zone Eras: 3
11591 //---------------------------------------------------------------------------
11592 
11593 static const AtcZoneEra kAtcZoneEraAmerica_Panama[] = {
11594  // -5:18:08 - LMT 1890
11595  {
11596  NULL /*zone_policy*/,
11597  "LMT" /*format*/,
11598  -1273 /*offset_code (-19088/15)*/,
11599  7 /*offset_remainder (-19088%15)*/,
11600  0 /*delta_minutes*/,
11601  1890 /*until_year*/,
11602  1 /*until_month*/,
11603  1 /*until_day*/,
11604  0 /*until_time_code (0/15)*/,
11605  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11606  },
11607  // -5:19:36 - CMT 1908 Apr 22
11608  {
11609  NULL /*zone_policy*/,
11610  "CMT" /*format*/,
11611  -1279 /*offset_code (-19176/15)*/,
11612  9 /*offset_remainder (-19176%15)*/,
11613  0 /*delta_minutes*/,
11614  1908 /*until_year*/,
11615  4 /*until_month*/,
11616  22 /*until_day*/,
11617  0 /*until_time_code (0/15)*/,
11618  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11619  },
11620  // -5:00 - EST
11621  {
11622  NULL /*zone_policy*/,
11623  "EST" /*format*/,
11624  -1200 /*offset_code (-18000/15)*/,
11625  0 /*offset_remainder (-18000%15)*/,
11626  0 /*delta_minutes*/,
11627  32767 /*until_year*/,
11628  1 /*until_month*/,
11629  1 /*until_day*/,
11630  0 /*until_time_code (0/15)*/,
11631  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11632  },
11633 
11634 };
11635 
11636 static const char kAtcZoneNameAmerica_Panama[] = "America/Panama";
11637 
11638 const AtcZoneInfo kAtcAllZoneAmerica_Panama = {
11639  kAtcZoneNameAmerica_Panama /*name*/,
11640  0xb3863854 /*zone_id*/,
11641  &kAtcAllZoneContext /*zone_context*/,
11642  3 /*num_eras*/,
11643  kAtcZoneEraAmerica_Panama /*eras*/,
11644  NULL /*target_info*/,
11645 };
11646 
11647 //---------------------------------------------------------------------------
11648 // Zone name: America/Paramaribo
11649 // Zone Eras: 5
11650 //---------------------------------------------------------------------------
11651 
11652 static const AtcZoneEra kAtcZoneEraAmerica_Paramaribo[] = {
11653  // -3:40:40 - LMT 1911
11654  {
11655  NULL /*zone_policy*/,
11656  "LMT" /*format*/,
11657  -883 /*offset_code (-13240/15)*/,
11658  5 /*offset_remainder (-13240%15)*/,
11659  0 /*delta_minutes*/,
11660  1911 /*until_year*/,
11661  1 /*until_month*/,
11662  1 /*until_day*/,
11663  0 /*until_time_code (0/15)*/,
11664  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11665  },
11666  // -3:40:52 - PMT 1935
11667  {
11668  NULL /*zone_policy*/,
11669  "PMT" /*format*/,
11670  -884 /*offset_code (-13252/15)*/,
11671  8 /*offset_remainder (-13252%15)*/,
11672  0 /*delta_minutes*/,
11673  1935 /*until_year*/,
11674  1 /*until_month*/,
11675  1 /*until_day*/,
11676  0 /*until_time_code (0/15)*/,
11677  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11678  },
11679  // -3:40:36 - PMT 1945 Oct
11680  {
11681  NULL /*zone_policy*/,
11682  "PMT" /*format*/,
11683  -883 /*offset_code (-13236/15)*/,
11684  9 /*offset_remainder (-13236%15)*/,
11685  0 /*delta_minutes*/,
11686  1945 /*until_year*/,
11687  10 /*until_month*/,
11688  1 /*until_day*/,
11689  0 /*until_time_code (0/15)*/,
11690  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11691  },
11692  // -3:30 - -0330 1984 Oct
11693  {
11694  NULL /*zone_policy*/,
11695  "-0330" /*format*/,
11696  -840 /*offset_code (-12600/15)*/,
11697  0 /*offset_remainder (-12600%15)*/,
11698  0 /*delta_minutes*/,
11699  1984 /*until_year*/,
11700  10 /*until_month*/,
11701  1 /*until_day*/,
11702  0 /*until_time_code (0/15)*/,
11703  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11704  },
11705  // -3:00 - -03
11706  {
11707  NULL /*zone_policy*/,
11708  "-03" /*format*/,
11709  -720 /*offset_code (-10800/15)*/,
11710  0 /*offset_remainder (-10800%15)*/,
11711  0 /*delta_minutes*/,
11712  32767 /*until_year*/,
11713  1 /*until_month*/,
11714  1 /*until_day*/,
11715  0 /*until_time_code (0/15)*/,
11716  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11717  },
11718 
11719 };
11720 
11721 static const char kAtcZoneNameAmerica_Paramaribo[] = "America/Paramaribo";
11722 
11723 const AtcZoneInfo kAtcAllZoneAmerica_Paramaribo = {
11724  kAtcZoneNameAmerica_Paramaribo /*name*/,
11725  0xb319e4c4 /*zone_id*/,
11726  &kAtcAllZoneContext /*zone_context*/,
11727  5 /*num_eras*/,
11728  kAtcZoneEraAmerica_Paramaribo /*eras*/,
11729  NULL /*target_info*/,
11730 };
11731 
11732 //---------------------------------------------------------------------------
11733 // Zone name: America/Phoenix
11734 // Zone Eras: 7
11735 //---------------------------------------------------------------------------
11736 
11737 static const AtcZoneEra kAtcZoneEraAmerica_Phoenix[] = {
11738  // -7:28:18 - LMT 1883 Nov 18 19:00u
11739  {
11740  NULL /*zone_policy*/,
11741  "LMT" /*format*/,
11742  -1794 /*offset_code (-26898/15)*/,
11743  12 /*offset_remainder (-26898%15)*/,
11744  0 /*delta_minutes*/,
11745  1883 /*until_year*/,
11746  11 /*until_month*/,
11747  18 /*until_day*/,
11748  4560 /*until_time_code (68400/15)*/,
11749  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
11750  },
11751  // -7:00 US M%sT 1944 Jan 1 0:01
11752  {
11753  &kAtcAllZonePolicyUS /*zone_policy*/,
11754  "M%T" /*format*/,
11755  -1680 /*offset_code (-25200/15)*/,
11756  0 /*offset_remainder (-25200%15)*/,
11757  0 /*delta_minutes*/,
11758  1944 /*until_year*/,
11759  1 /*until_month*/,
11760  1 /*until_day*/,
11761  4 /*until_time_code (60/15)*/,
11762  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11763  },
11764  // -7:00 - MST 1944 Apr 1 0:01
11765  {
11766  NULL /*zone_policy*/,
11767  "MST" /*format*/,
11768  -1680 /*offset_code (-25200/15)*/,
11769  0 /*offset_remainder (-25200%15)*/,
11770  0 /*delta_minutes*/,
11771  1944 /*until_year*/,
11772  4 /*until_month*/,
11773  1 /*until_day*/,
11774  4 /*until_time_code (60/15)*/,
11775  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11776  },
11777  // -7:00 US M%sT 1944 Oct 1 0:01
11778  {
11779  &kAtcAllZonePolicyUS /*zone_policy*/,
11780  "M%T" /*format*/,
11781  -1680 /*offset_code (-25200/15)*/,
11782  0 /*offset_remainder (-25200%15)*/,
11783  0 /*delta_minutes*/,
11784  1944 /*until_year*/,
11785  10 /*until_month*/,
11786  1 /*until_day*/,
11787  4 /*until_time_code (60/15)*/,
11788  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11789  },
11790  // -7:00 - MST 1967
11791  {
11792  NULL /*zone_policy*/,
11793  "MST" /*format*/,
11794  -1680 /*offset_code (-25200/15)*/,
11795  0 /*offset_remainder (-25200%15)*/,
11796  0 /*delta_minutes*/,
11797  1967 /*until_year*/,
11798  1 /*until_month*/,
11799  1 /*until_day*/,
11800  0 /*until_time_code (0/15)*/,
11801  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11802  },
11803  // -7:00 US M%sT 1968 Mar 21
11804  {
11805  &kAtcAllZonePolicyUS /*zone_policy*/,
11806  "M%T" /*format*/,
11807  -1680 /*offset_code (-25200/15)*/,
11808  0 /*offset_remainder (-25200%15)*/,
11809  0 /*delta_minutes*/,
11810  1968 /*until_year*/,
11811  3 /*until_month*/,
11812  21 /*until_day*/,
11813  0 /*until_time_code (0/15)*/,
11814  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11815  },
11816  // -7:00 - MST
11817  {
11818  NULL /*zone_policy*/,
11819  "MST" /*format*/,
11820  -1680 /*offset_code (-25200/15)*/,
11821  0 /*offset_remainder (-25200%15)*/,
11822  0 /*delta_minutes*/,
11823  32767 /*until_year*/,
11824  1 /*until_month*/,
11825  1 /*until_day*/,
11826  0 /*until_time_code (0/15)*/,
11827  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11828  },
11829 
11830 };
11831 
11832 static const char kAtcZoneNameAmerica_Phoenix[] = "America/Phoenix";
11833 
11834 const AtcZoneInfo kAtcAllZoneAmerica_Phoenix = {
11835  kAtcZoneNameAmerica_Phoenix /*name*/,
11836  0x34b5af01 /*zone_id*/,
11837  &kAtcAllZoneContext /*zone_context*/,
11838  7 /*num_eras*/,
11839  kAtcZoneEraAmerica_Phoenix /*eras*/,
11840  NULL /*target_info*/,
11841 };
11842 
11843 //---------------------------------------------------------------------------
11844 // Zone name: America/Port-au-Prince
11845 // Zone Eras: 3
11846 //---------------------------------------------------------------------------
11847 
11848 static const AtcZoneEra kAtcZoneEraAmerica_Port_au_Prince[] = {
11849  // -4:49:20 - LMT 1890
11850  {
11851  NULL /*zone_policy*/,
11852  "LMT" /*format*/,
11853  -1158 /*offset_code (-17360/15)*/,
11854  10 /*offset_remainder (-17360%15)*/,
11855  0 /*delta_minutes*/,
11856  1890 /*until_year*/,
11857  1 /*until_month*/,
11858  1 /*until_day*/,
11859  0 /*until_time_code (0/15)*/,
11860  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11861  },
11862  // -4:49 - PPMT 1917 Jan 24 12:00
11863  {
11864  NULL /*zone_policy*/,
11865  "PPMT" /*format*/,
11866  -1156 /*offset_code (-17340/15)*/,
11867  0 /*offset_remainder (-17340%15)*/,
11868  0 /*delta_minutes*/,
11869  1917 /*until_year*/,
11870  1 /*until_month*/,
11871  24 /*until_day*/,
11872  2880 /*until_time_code (43200/15)*/,
11873  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11874  },
11875  // -5:00 Haiti E%sT
11876  {
11877  &kAtcAllZonePolicyHaiti /*zone_policy*/,
11878  "E%T" /*format*/,
11879  -1200 /*offset_code (-18000/15)*/,
11880  0 /*offset_remainder (-18000%15)*/,
11881  0 /*delta_minutes*/,
11882  32767 /*until_year*/,
11883  1 /*until_month*/,
11884  1 /*until_day*/,
11885  0 /*until_time_code (0/15)*/,
11886  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11887  },
11888 
11889 };
11890 
11891 static const char kAtcZoneNameAmerica_Port_au_Prince[] = "America/Port-au-Prince";
11892 
11893 const AtcZoneInfo kAtcAllZoneAmerica_Port_au_Prince = {
11894  kAtcZoneNameAmerica_Port_au_Prince /*name*/,
11895  0x8e4a7bdc /*zone_id*/,
11896  &kAtcAllZoneContext /*zone_context*/,
11897  3 /*num_eras*/,
11898  kAtcZoneEraAmerica_Port_au_Prince /*eras*/,
11899  NULL /*target_info*/,
11900 };
11901 
11902 //---------------------------------------------------------------------------
11903 // Zone name: America/Porto_Velho
11904 // Zone Eras: 3
11905 //---------------------------------------------------------------------------
11906 
11907 static const AtcZoneEra kAtcZoneEraAmerica_Porto_Velho[] = {
11908  // -4:15:36 - LMT 1914
11909  {
11910  NULL /*zone_policy*/,
11911  "LMT" /*format*/,
11912  -1023 /*offset_code (-15336/15)*/,
11913  9 /*offset_remainder (-15336%15)*/,
11914  0 /*delta_minutes*/,
11915  1914 /*until_year*/,
11916  1 /*until_month*/,
11917  1 /*until_day*/,
11918  0 /*until_time_code (0/15)*/,
11919  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11920  },
11921  // -4:00 Brazil -04/-03 1988 Sep 12
11922  {
11923  &kAtcAllZonePolicyBrazil /*zone_policy*/,
11924  "-04/-03" /*format*/,
11925  -960 /*offset_code (-14400/15)*/,
11926  0 /*offset_remainder (-14400%15)*/,
11927  0 /*delta_minutes*/,
11928  1988 /*until_year*/,
11929  9 /*until_month*/,
11930  12 /*until_day*/,
11931  0 /*until_time_code (0/15)*/,
11932  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11933  },
11934  // -4:00 - -04
11935  {
11936  NULL /*zone_policy*/,
11937  "-04" /*format*/,
11938  -960 /*offset_code (-14400/15)*/,
11939  0 /*offset_remainder (-14400%15)*/,
11940  0 /*delta_minutes*/,
11941  32767 /*until_year*/,
11942  1 /*until_month*/,
11943  1 /*until_day*/,
11944  0 /*until_time_code (0/15)*/,
11945  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11946  },
11947 
11948 };
11949 
11950 static const char kAtcZoneNameAmerica_Porto_Velho[] = "America/Porto_Velho";
11951 
11952 const AtcZoneInfo kAtcAllZoneAmerica_Porto_Velho = {
11953  kAtcZoneNameAmerica_Porto_Velho /*name*/,
11954  0x6b1aac77 /*zone_id*/,
11955  &kAtcAllZoneContext /*zone_context*/,
11956  3 /*num_eras*/,
11957  kAtcZoneEraAmerica_Porto_Velho /*eras*/,
11958  NULL /*target_info*/,
11959 };
11960 
11961 //---------------------------------------------------------------------------
11962 // Zone name: America/Puerto_Rico
11963 // Zone Eras: 4
11964 //---------------------------------------------------------------------------
11965 
11966 static const AtcZoneEra kAtcZoneEraAmerica_Puerto_Rico[] = {
11967  // -4:24:25 - LMT 1899 Mar 28 12:00
11968  {
11969  NULL /*zone_policy*/,
11970  "LMT" /*format*/,
11971  -1058 /*offset_code (-15865/15)*/,
11972  5 /*offset_remainder (-15865%15)*/,
11973  0 /*delta_minutes*/,
11974  1899 /*until_year*/,
11975  3 /*until_month*/,
11976  28 /*until_day*/,
11977  2880 /*until_time_code (43200/15)*/,
11978  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11979  },
11980  // -4:00 - AST 1942 May 3
11981  {
11982  NULL /*zone_policy*/,
11983  "AST" /*format*/,
11984  -960 /*offset_code (-14400/15)*/,
11985  0 /*offset_remainder (-14400%15)*/,
11986  0 /*delta_minutes*/,
11987  1942 /*until_year*/,
11988  5 /*until_month*/,
11989  3 /*until_day*/,
11990  0 /*until_time_code (0/15)*/,
11991  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
11992  },
11993  // -4:00 US A%sT 1946
11994  {
11995  &kAtcAllZonePolicyUS /*zone_policy*/,
11996  "A%T" /*format*/,
11997  -960 /*offset_code (-14400/15)*/,
11998  0 /*offset_remainder (-14400%15)*/,
11999  0 /*delta_minutes*/,
12000  1946 /*until_year*/,
12001  1 /*until_month*/,
12002  1 /*until_day*/,
12003  0 /*until_time_code (0/15)*/,
12004  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12005  },
12006  // -4:00 - AST
12007  {
12008  NULL /*zone_policy*/,
12009  "AST" /*format*/,
12010  -960 /*offset_code (-14400/15)*/,
12011  0 /*offset_remainder (-14400%15)*/,
12012  0 /*delta_minutes*/,
12013  32767 /*until_year*/,
12014  1 /*until_month*/,
12015  1 /*until_day*/,
12016  0 /*until_time_code (0/15)*/,
12017  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12018  },
12019 
12020 };
12021 
12022 static const char kAtcZoneNameAmerica_Puerto_Rico[] = "America/Puerto_Rico";
12023 
12024 const AtcZoneInfo kAtcAllZoneAmerica_Puerto_Rico = {
12025  kAtcZoneNameAmerica_Puerto_Rico /*name*/,
12026  0x6752ca31 /*zone_id*/,
12027  &kAtcAllZoneContext /*zone_context*/,
12028  4 /*num_eras*/,
12029  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
12030  NULL /*target_info*/,
12031 };
12032 
12033 //---------------------------------------------------------------------------
12034 // Zone name: America/Punta_Arenas
12035 // Zone Eras: 14
12036 //---------------------------------------------------------------------------
12037 
12038 static const AtcZoneEra kAtcZoneEraAmerica_Punta_Arenas[] = {
12039  // -4:43:40 - LMT 1890
12040  {
12041  NULL /*zone_policy*/,
12042  "LMT" /*format*/,
12043  -1135 /*offset_code (-17020/15)*/,
12044  5 /*offset_remainder (-17020%15)*/,
12045  0 /*delta_minutes*/,
12046  1890 /*until_year*/,
12047  1 /*until_month*/,
12048  1 /*until_day*/,
12049  0 /*until_time_code (0/15)*/,
12050  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12051  },
12052  // -4:42:45 - SMT 1910 Jan 10
12053  {
12054  NULL /*zone_policy*/,
12055  "SMT" /*format*/,
12056  -1131 /*offset_code (-16965/15)*/,
12057  0 /*offset_remainder (-16965%15)*/,
12058  0 /*delta_minutes*/,
12059  1910 /*until_year*/,
12060  1 /*until_month*/,
12061  10 /*until_day*/,
12062  0 /*until_time_code (0/15)*/,
12063  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12064  },
12065  // -5:00 - -05 1916 Jul 1
12066  {
12067  NULL /*zone_policy*/,
12068  "-05" /*format*/,
12069  -1200 /*offset_code (-18000/15)*/,
12070  0 /*offset_remainder (-18000%15)*/,
12071  0 /*delta_minutes*/,
12072  1916 /*until_year*/,
12073  7 /*until_month*/,
12074  1 /*until_day*/,
12075  0 /*until_time_code (0/15)*/,
12076  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12077  },
12078  // -4:42:45 - SMT 1918 Sep 10
12079  {
12080  NULL /*zone_policy*/,
12081  "SMT" /*format*/,
12082  -1131 /*offset_code (-16965/15)*/,
12083  0 /*offset_remainder (-16965%15)*/,
12084  0 /*delta_minutes*/,
12085  1918 /*until_year*/,
12086  9 /*until_month*/,
12087  10 /*until_day*/,
12088  0 /*until_time_code (0/15)*/,
12089  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12090  },
12091  // -4:00 - -04 1919 Jul 1
12092  {
12093  NULL /*zone_policy*/,
12094  "-04" /*format*/,
12095  -960 /*offset_code (-14400/15)*/,
12096  0 /*offset_remainder (-14400%15)*/,
12097  0 /*delta_minutes*/,
12098  1919 /*until_year*/,
12099  7 /*until_month*/,
12100  1 /*until_day*/,
12101  0 /*until_time_code (0/15)*/,
12102  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12103  },
12104  // -4:42:45 - SMT 1927 Sep 1
12105  {
12106  NULL /*zone_policy*/,
12107  "SMT" /*format*/,
12108  -1131 /*offset_code (-16965/15)*/,
12109  0 /*offset_remainder (-16965%15)*/,
12110  0 /*delta_minutes*/,
12111  1927 /*until_year*/,
12112  9 /*until_month*/,
12113  1 /*until_day*/,
12114  0 /*until_time_code (0/15)*/,
12115  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12116  },
12117  // -5:00 Chile -05/-04 1932 Sep 1
12118  {
12119  &kAtcAllZonePolicyChile /*zone_policy*/,
12120  "-05/-04" /*format*/,
12121  -1200 /*offset_code (-18000/15)*/,
12122  0 /*offset_remainder (-18000%15)*/,
12123  0 /*delta_minutes*/,
12124  1932 /*until_year*/,
12125  9 /*until_month*/,
12126  1 /*until_day*/,
12127  0 /*until_time_code (0/15)*/,
12128  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12129  },
12130  // -4:00 - -04 1942 Jun 1
12131  {
12132  NULL /*zone_policy*/,
12133  "-04" /*format*/,
12134  -960 /*offset_code (-14400/15)*/,
12135  0 /*offset_remainder (-14400%15)*/,
12136  0 /*delta_minutes*/,
12137  1942 /*until_year*/,
12138  6 /*until_month*/,
12139  1 /*until_day*/,
12140  0 /*until_time_code (0/15)*/,
12141  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12142  },
12143  // -5:00 - -05 1942 Aug 1
12144  {
12145  NULL /*zone_policy*/,
12146  "-05" /*format*/,
12147  -1200 /*offset_code (-18000/15)*/,
12148  0 /*offset_remainder (-18000%15)*/,
12149  0 /*delta_minutes*/,
12150  1942 /*until_year*/,
12151  8 /*until_month*/,
12152  1 /*until_day*/,
12153  0 /*until_time_code (0/15)*/,
12154  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12155  },
12156  // -4:00 - -04 1946 Aug 28 24:00
12157  {
12158  NULL /*zone_policy*/,
12159  "-04" /*format*/,
12160  -960 /*offset_code (-14400/15)*/,
12161  0 /*offset_remainder (-14400%15)*/,
12162  0 /*delta_minutes*/,
12163  1946 /*until_year*/,
12164  8 /*until_month*/,
12165  28 /*until_day*/,
12166  5760 /*until_time_code (86400/15)*/,
12167  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12168  },
12169  // -5:00 1:00 -04 1947 Mar 31 24:00
12170  {
12171  NULL /*zone_policy*/,
12172  "-04" /*format*/,
12173  -1200 /*offset_code (-18000/15)*/,
12174  0 /*offset_remainder (-18000%15)*/,
12175  60 /*delta_minutes*/,
12176  1947 /*until_year*/,
12177  3 /*until_month*/,
12178  31 /*until_day*/,
12179  5760 /*until_time_code (86400/15)*/,
12180  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12181  },
12182  // -5:00 - -05 1947 May 21 23:00
12183  {
12184  NULL /*zone_policy*/,
12185  "-05" /*format*/,
12186  -1200 /*offset_code (-18000/15)*/,
12187  0 /*offset_remainder (-18000%15)*/,
12188  0 /*delta_minutes*/,
12189  1947 /*until_year*/,
12190  5 /*until_month*/,
12191  21 /*until_day*/,
12192  5520 /*until_time_code (82800/15)*/,
12193  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12194  },
12195  // -4:00 Chile -04/-03 2016 Dec 4
12196  {
12197  &kAtcAllZonePolicyChile /*zone_policy*/,
12198  "-04/-03" /*format*/,
12199  -960 /*offset_code (-14400/15)*/,
12200  0 /*offset_remainder (-14400%15)*/,
12201  0 /*delta_minutes*/,
12202  2016 /*until_year*/,
12203  12 /*until_month*/,
12204  4 /*until_day*/,
12205  0 /*until_time_code (0/15)*/,
12206  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12207  },
12208  // -3:00 - -03
12209  {
12210  NULL /*zone_policy*/,
12211  "-03" /*format*/,
12212  -720 /*offset_code (-10800/15)*/,
12213  0 /*offset_remainder (-10800%15)*/,
12214  0 /*delta_minutes*/,
12215  32767 /*until_year*/,
12216  1 /*until_month*/,
12217  1 /*until_day*/,
12218  0 /*until_time_code (0/15)*/,
12219  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12220  },
12221 
12222 };
12223 
12224 static const char kAtcZoneNameAmerica_Punta_Arenas[] = "America/Punta_Arenas";
12225 
12226 const AtcZoneInfo kAtcAllZoneAmerica_Punta_Arenas = {
12227  kAtcZoneNameAmerica_Punta_Arenas /*name*/,
12228  0xc2c3bce7 /*zone_id*/,
12229  &kAtcAllZoneContext /*zone_context*/,
12230  14 /*num_eras*/,
12231  kAtcZoneEraAmerica_Punta_Arenas /*eras*/,
12232  NULL /*target_info*/,
12233 };
12234 
12235 //---------------------------------------------------------------------------
12236 // Zone name: America/Rankin_Inlet
12237 // Zone Eras: 4
12238 //---------------------------------------------------------------------------
12239 
12240 static const AtcZoneEra kAtcZoneEraAmerica_Rankin_Inlet[] = {
12241  // 0 - -00 1957
12242  {
12243  NULL /*zone_policy*/,
12244  "-00" /*format*/,
12245  0 /*offset_code (0/15)*/,
12246  0 /*offset_remainder (0%15)*/,
12247  0 /*delta_minutes*/,
12248  1957 /*until_year*/,
12249  1 /*until_month*/,
12250  1 /*until_day*/,
12251  0 /*until_time_code (0/15)*/,
12252  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12253  },
12254  // -6:00 NT_YK C%sT 2000 Oct 29 2:00
12255  {
12256  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
12257  "C%T" /*format*/,
12258  -1440 /*offset_code (-21600/15)*/,
12259  0 /*offset_remainder (-21600%15)*/,
12260  0 /*delta_minutes*/,
12261  2000 /*until_year*/,
12262  10 /*until_month*/,
12263  29 /*until_day*/,
12264  480 /*until_time_code (7200/15)*/,
12265  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12266  },
12267  // -5:00 - EST 2001 Apr 1 3:00
12268  {
12269  NULL /*zone_policy*/,
12270  "EST" /*format*/,
12271  -1200 /*offset_code (-18000/15)*/,
12272  0 /*offset_remainder (-18000%15)*/,
12273  0 /*delta_minutes*/,
12274  2001 /*until_year*/,
12275  4 /*until_month*/,
12276  1 /*until_day*/,
12277  720 /*until_time_code (10800/15)*/,
12278  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12279  },
12280  // -6:00 Canada C%sT
12281  {
12282  &kAtcAllZonePolicyCanada /*zone_policy*/,
12283  "C%T" /*format*/,
12284  -1440 /*offset_code (-21600/15)*/,
12285  0 /*offset_remainder (-21600%15)*/,
12286  0 /*delta_minutes*/,
12287  32767 /*until_year*/,
12288  1 /*until_month*/,
12289  1 /*until_day*/,
12290  0 /*until_time_code (0/15)*/,
12291  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12292  },
12293 
12294 };
12295 
12296 static const char kAtcZoneNameAmerica_Rankin_Inlet[] = "America/Rankin_Inlet";
12297 
12298 const AtcZoneInfo kAtcAllZoneAmerica_Rankin_Inlet = {
12299  kAtcZoneNameAmerica_Rankin_Inlet /*name*/,
12300  0xc8de4984 /*zone_id*/,
12301  &kAtcAllZoneContext /*zone_context*/,
12302  4 /*num_eras*/,
12303  kAtcZoneEraAmerica_Rankin_Inlet /*eras*/,
12304  NULL /*target_info*/,
12305 };
12306 
12307 //---------------------------------------------------------------------------
12308 // Zone name: America/Recife
12309 // Zone Eras: 7
12310 //---------------------------------------------------------------------------
12311 
12312 static const AtcZoneEra kAtcZoneEraAmerica_Recife[] = {
12313  // -2:19:36 - LMT 1914
12314  {
12315  NULL /*zone_policy*/,
12316  "LMT" /*format*/,
12317  -559 /*offset_code (-8376/15)*/,
12318  9 /*offset_remainder (-8376%15)*/,
12319  0 /*delta_minutes*/,
12320  1914 /*until_year*/,
12321  1 /*until_month*/,
12322  1 /*until_day*/,
12323  0 /*until_time_code (0/15)*/,
12324  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12325  },
12326  // -3:00 Brazil -03/-02 1990 Sep 17
12327  {
12328  &kAtcAllZonePolicyBrazil /*zone_policy*/,
12329  "-03/-02" /*format*/,
12330  -720 /*offset_code (-10800/15)*/,
12331  0 /*offset_remainder (-10800%15)*/,
12332  0 /*delta_minutes*/,
12333  1990 /*until_year*/,
12334  9 /*until_month*/,
12335  17 /*until_day*/,
12336  0 /*until_time_code (0/15)*/,
12337  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12338  },
12339  // -3:00 - -03 1999 Sep 30
12340  {
12341  NULL /*zone_policy*/,
12342  "-03" /*format*/,
12343  -720 /*offset_code (-10800/15)*/,
12344  0 /*offset_remainder (-10800%15)*/,
12345  0 /*delta_minutes*/,
12346  1999 /*until_year*/,
12347  9 /*until_month*/,
12348  30 /*until_day*/,
12349  0 /*until_time_code (0/15)*/,
12350  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12351  },
12352  // -3:00 Brazil -03/-02 2000 Oct 15
12353  {
12354  &kAtcAllZonePolicyBrazil /*zone_policy*/,
12355  "-03/-02" /*format*/,
12356  -720 /*offset_code (-10800/15)*/,
12357  0 /*offset_remainder (-10800%15)*/,
12358  0 /*delta_minutes*/,
12359  2000 /*until_year*/,
12360  10 /*until_month*/,
12361  15 /*until_day*/,
12362  0 /*until_time_code (0/15)*/,
12363  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12364  },
12365  // -3:00 - -03 2001 Sep 13
12366  {
12367  NULL /*zone_policy*/,
12368  "-03" /*format*/,
12369  -720 /*offset_code (-10800/15)*/,
12370  0 /*offset_remainder (-10800%15)*/,
12371  0 /*delta_minutes*/,
12372  2001 /*until_year*/,
12373  9 /*until_month*/,
12374  13 /*until_day*/,
12375  0 /*until_time_code (0/15)*/,
12376  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12377  },
12378  // -3:00 Brazil -03/-02 2002 Oct 1
12379  {
12380  &kAtcAllZonePolicyBrazil /*zone_policy*/,
12381  "-03/-02" /*format*/,
12382  -720 /*offset_code (-10800/15)*/,
12383  0 /*offset_remainder (-10800%15)*/,
12384  0 /*delta_minutes*/,
12385  2002 /*until_year*/,
12386  10 /*until_month*/,
12387  1 /*until_day*/,
12388  0 /*until_time_code (0/15)*/,
12389  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12390  },
12391  // -3:00 - -03
12392  {
12393  NULL /*zone_policy*/,
12394  "-03" /*format*/,
12395  -720 /*offset_code (-10800/15)*/,
12396  0 /*offset_remainder (-10800%15)*/,
12397  0 /*delta_minutes*/,
12398  32767 /*until_year*/,
12399  1 /*until_month*/,
12400  1 /*until_day*/,
12401  0 /*until_time_code (0/15)*/,
12402  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12403  },
12404 
12405 };
12406 
12407 static const char kAtcZoneNameAmerica_Recife[] = "America/Recife";
12408 
12409 const AtcZoneInfo kAtcAllZoneAmerica_Recife = {
12410  kAtcZoneNameAmerica_Recife /*name*/,
12411  0xb8730494 /*zone_id*/,
12412  &kAtcAllZoneContext /*zone_context*/,
12413  7 /*num_eras*/,
12414  kAtcZoneEraAmerica_Recife /*eras*/,
12415  NULL /*target_info*/,
12416 };
12417 
12418 //---------------------------------------------------------------------------
12419 // Zone name: America/Regina
12420 // Zone Eras: 3
12421 //---------------------------------------------------------------------------
12422 
12423 static const AtcZoneEra kAtcZoneEraAmerica_Regina[] = {
12424  // -6:58:36 - LMT 1905 Sep
12425  {
12426  NULL /*zone_policy*/,
12427  "LMT" /*format*/,
12428  -1675 /*offset_code (-25116/15)*/,
12429  9 /*offset_remainder (-25116%15)*/,
12430  0 /*delta_minutes*/,
12431  1905 /*until_year*/,
12432  9 /*until_month*/,
12433  1 /*until_day*/,
12434  0 /*until_time_code (0/15)*/,
12435  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12436  },
12437  // -7:00 Regina M%sT 1960 Apr lastSun 2:00
12438  {
12439  &kAtcAllZonePolicyRegina /*zone_policy*/,
12440  "M%T" /*format*/,
12441  -1680 /*offset_code (-25200/15)*/,
12442  0 /*offset_remainder (-25200%15)*/,
12443  0 /*delta_minutes*/,
12444  1960 /*until_year*/,
12445  4 /*until_month*/,
12446  24 /*until_day*/,
12447  480 /*until_time_code (7200/15)*/,
12448  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12449  },
12450  // -6:00 - CST
12451  {
12452  NULL /*zone_policy*/,
12453  "CST" /*format*/,
12454  -1440 /*offset_code (-21600/15)*/,
12455  0 /*offset_remainder (-21600%15)*/,
12456  0 /*delta_minutes*/,
12457  32767 /*until_year*/,
12458  1 /*until_month*/,
12459  1 /*until_day*/,
12460  0 /*until_time_code (0/15)*/,
12461  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12462  },
12463 
12464 };
12465 
12466 static const char kAtcZoneNameAmerica_Regina[] = "America/Regina";
12467 
12468 const AtcZoneInfo kAtcAllZoneAmerica_Regina = {
12469  kAtcZoneNameAmerica_Regina /*name*/,
12470  0xb875371c /*zone_id*/,
12471  &kAtcAllZoneContext /*zone_context*/,
12472  3 /*num_eras*/,
12473  kAtcZoneEraAmerica_Regina /*eras*/,
12474  NULL /*target_info*/,
12475 };
12476 
12477 //---------------------------------------------------------------------------
12478 // Zone name: America/Resolute
12479 // Zone Eras: 6
12480 //---------------------------------------------------------------------------
12481 
12482 static const AtcZoneEra kAtcZoneEraAmerica_Resolute[] = {
12483  // 0 - -00 1947 Aug 31
12484  {
12485  NULL /*zone_policy*/,
12486  "-00" /*format*/,
12487  0 /*offset_code (0/15)*/,
12488  0 /*offset_remainder (0%15)*/,
12489  0 /*delta_minutes*/,
12490  1947 /*until_year*/,
12491  8 /*until_month*/,
12492  31 /*until_day*/,
12493  0 /*until_time_code (0/15)*/,
12494  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12495  },
12496  // -6:00 NT_YK C%sT 2000 Oct 29 2:00
12497  {
12498  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
12499  "C%T" /*format*/,
12500  -1440 /*offset_code (-21600/15)*/,
12501  0 /*offset_remainder (-21600%15)*/,
12502  0 /*delta_minutes*/,
12503  2000 /*until_year*/,
12504  10 /*until_month*/,
12505  29 /*until_day*/,
12506  480 /*until_time_code (7200/15)*/,
12507  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12508  },
12509  // -5:00 - EST 2001 Apr 1 3:00
12510  {
12511  NULL /*zone_policy*/,
12512  "EST" /*format*/,
12513  -1200 /*offset_code (-18000/15)*/,
12514  0 /*offset_remainder (-18000%15)*/,
12515  0 /*delta_minutes*/,
12516  2001 /*until_year*/,
12517  4 /*until_month*/,
12518  1 /*until_day*/,
12519  720 /*until_time_code (10800/15)*/,
12520  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12521  },
12522  // -6:00 Canada C%sT 2006 Oct 29 2:00
12523  {
12524  &kAtcAllZonePolicyCanada /*zone_policy*/,
12525  "C%T" /*format*/,
12526  -1440 /*offset_code (-21600/15)*/,
12527  0 /*offset_remainder (-21600%15)*/,
12528  0 /*delta_minutes*/,
12529  2006 /*until_year*/,
12530  10 /*until_month*/,
12531  29 /*until_day*/,
12532  480 /*until_time_code (7200/15)*/,
12533  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12534  },
12535  // -5:00 - EST 2007 Mar 11 3:00
12536  {
12537  NULL /*zone_policy*/,
12538  "EST" /*format*/,
12539  -1200 /*offset_code (-18000/15)*/,
12540  0 /*offset_remainder (-18000%15)*/,
12541  0 /*delta_minutes*/,
12542  2007 /*until_year*/,
12543  3 /*until_month*/,
12544  11 /*until_day*/,
12545  720 /*until_time_code (10800/15)*/,
12546  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12547  },
12548  // -6:00 Canada C%sT
12549  {
12550  &kAtcAllZonePolicyCanada /*zone_policy*/,
12551  "C%T" /*format*/,
12552  -1440 /*offset_code (-21600/15)*/,
12553  0 /*offset_remainder (-21600%15)*/,
12554  0 /*delta_minutes*/,
12555  32767 /*until_year*/,
12556  1 /*until_month*/,
12557  1 /*until_day*/,
12558  0 /*until_time_code (0/15)*/,
12559  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12560  },
12561 
12562 };
12563 
12564 static const char kAtcZoneNameAmerica_Resolute[] = "America/Resolute";
12565 
12566 const AtcZoneInfo kAtcAllZoneAmerica_Resolute = {
12567  kAtcZoneNameAmerica_Resolute /*name*/,
12568  0xc7093459 /*zone_id*/,
12569  &kAtcAllZoneContext /*zone_context*/,
12570  6 /*num_eras*/,
12571  kAtcZoneEraAmerica_Resolute /*eras*/,
12572  NULL /*target_info*/,
12573 };
12574 
12575 //---------------------------------------------------------------------------
12576 // Zone name: America/Rio_Branco
12577 // Zone Eras: 5
12578 //---------------------------------------------------------------------------
12579 
12580 static const AtcZoneEra kAtcZoneEraAmerica_Rio_Branco[] = {
12581  // -4:31:12 - LMT 1914
12582  {
12583  NULL /*zone_policy*/,
12584  "LMT" /*format*/,
12585  -1085 /*offset_code (-16272/15)*/,
12586  3 /*offset_remainder (-16272%15)*/,
12587  0 /*delta_minutes*/,
12588  1914 /*until_year*/,
12589  1 /*until_month*/,
12590  1 /*until_day*/,
12591  0 /*until_time_code (0/15)*/,
12592  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12593  },
12594  // -5:00 Brazil -05/-04 1988 Sep 12
12595  {
12596  &kAtcAllZonePolicyBrazil /*zone_policy*/,
12597  "-05/-04" /*format*/,
12598  -1200 /*offset_code (-18000/15)*/,
12599  0 /*offset_remainder (-18000%15)*/,
12600  0 /*delta_minutes*/,
12601  1988 /*until_year*/,
12602  9 /*until_month*/,
12603  12 /*until_day*/,
12604  0 /*until_time_code (0/15)*/,
12605  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12606  },
12607  // -5:00 - -05 2008 Jun 24 0:00
12608  {
12609  NULL /*zone_policy*/,
12610  "-05" /*format*/,
12611  -1200 /*offset_code (-18000/15)*/,
12612  0 /*offset_remainder (-18000%15)*/,
12613  0 /*delta_minutes*/,
12614  2008 /*until_year*/,
12615  6 /*until_month*/,
12616  24 /*until_day*/,
12617  0 /*until_time_code (0/15)*/,
12618  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12619  },
12620  // -4:00 - -04 2013 Nov 10
12621  {
12622  NULL /*zone_policy*/,
12623  "-04" /*format*/,
12624  -960 /*offset_code (-14400/15)*/,
12625  0 /*offset_remainder (-14400%15)*/,
12626  0 /*delta_minutes*/,
12627  2013 /*until_year*/,
12628  11 /*until_month*/,
12629  10 /*until_day*/,
12630  0 /*until_time_code (0/15)*/,
12631  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12632  },
12633  // -5:00 - -05
12634  {
12635  NULL /*zone_policy*/,
12636  "-05" /*format*/,
12637  -1200 /*offset_code (-18000/15)*/,
12638  0 /*offset_remainder (-18000%15)*/,
12639  0 /*delta_minutes*/,
12640  32767 /*until_year*/,
12641  1 /*until_month*/,
12642  1 /*until_day*/,
12643  0 /*until_time_code (0/15)*/,
12644  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12645  },
12646 
12647 };
12648 
12649 static const char kAtcZoneNameAmerica_Rio_Branco[] = "America/Rio_Branco";
12650 
12651 const AtcZoneInfo kAtcAllZoneAmerica_Rio_Branco = {
12652  kAtcZoneNameAmerica_Rio_Branco /*name*/,
12653  0x9d352764 /*zone_id*/,
12654  &kAtcAllZoneContext /*zone_context*/,
12655  5 /*num_eras*/,
12656  kAtcZoneEraAmerica_Rio_Branco /*eras*/,
12657  NULL /*target_info*/,
12658 };
12659 
12660 //---------------------------------------------------------------------------
12661 // Zone name: America/Santarem
12662 // Zone Eras: 4
12663 //---------------------------------------------------------------------------
12664 
12665 static const AtcZoneEra kAtcZoneEraAmerica_Santarem[] = {
12666  // -3:38:48 - LMT 1914
12667  {
12668  NULL /*zone_policy*/,
12669  "LMT" /*format*/,
12670  -876 /*offset_code (-13128/15)*/,
12671  12 /*offset_remainder (-13128%15)*/,
12672  0 /*delta_minutes*/,
12673  1914 /*until_year*/,
12674  1 /*until_month*/,
12675  1 /*until_day*/,
12676  0 /*until_time_code (0/15)*/,
12677  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12678  },
12679  // -4:00 Brazil -04/-03 1988 Sep 12
12680  {
12681  &kAtcAllZonePolicyBrazil /*zone_policy*/,
12682  "-04/-03" /*format*/,
12683  -960 /*offset_code (-14400/15)*/,
12684  0 /*offset_remainder (-14400%15)*/,
12685  0 /*delta_minutes*/,
12686  1988 /*until_year*/,
12687  9 /*until_month*/,
12688  12 /*until_day*/,
12689  0 /*until_time_code (0/15)*/,
12690  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12691  },
12692  // -4:00 - -04 2008 Jun 24 0:00
12693  {
12694  NULL /*zone_policy*/,
12695  "-04" /*format*/,
12696  -960 /*offset_code (-14400/15)*/,
12697  0 /*offset_remainder (-14400%15)*/,
12698  0 /*delta_minutes*/,
12699  2008 /*until_year*/,
12700  6 /*until_month*/,
12701  24 /*until_day*/,
12702  0 /*until_time_code (0/15)*/,
12703  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12704  },
12705  // -3:00 - -03
12706  {
12707  NULL /*zone_policy*/,
12708  "-03" /*format*/,
12709  -720 /*offset_code (-10800/15)*/,
12710  0 /*offset_remainder (-10800%15)*/,
12711  0 /*delta_minutes*/,
12712  32767 /*until_year*/,
12713  1 /*until_month*/,
12714  1 /*until_day*/,
12715  0 /*until_time_code (0/15)*/,
12716  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12717  },
12718 
12719 };
12720 
12721 static const char kAtcZoneNameAmerica_Santarem[] = "America/Santarem";
12722 
12723 const AtcZoneInfo kAtcAllZoneAmerica_Santarem = {
12724  kAtcZoneNameAmerica_Santarem /*name*/,
12725  0x740caec1 /*zone_id*/,
12726  &kAtcAllZoneContext /*zone_context*/,
12727  4 /*num_eras*/,
12728  kAtcZoneEraAmerica_Santarem /*eras*/,
12729  NULL /*target_info*/,
12730 };
12731 
12732 //---------------------------------------------------------------------------
12733 // Zone name: America/Santiago
12734 // Zone Eras: 14
12735 //---------------------------------------------------------------------------
12736 
12737 static const AtcZoneEra kAtcZoneEraAmerica_Santiago[] = {
12738  // -4:42:45 - LMT 1890
12739  {
12740  NULL /*zone_policy*/,
12741  "LMT" /*format*/,
12742  -1131 /*offset_code (-16965/15)*/,
12743  0 /*offset_remainder (-16965%15)*/,
12744  0 /*delta_minutes*/,
12745  1890 /*until_year*/,
12746  1 /*until_month*/,
12747  1 /*until_day*/,
12748  0 /*until_time_code (0/15)*/,
12749  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12750  },
12751  // -4:42:45 - SMT 1910 Jan 10
12752  {
12753  NULL /*zone_policy*/,
12754  "SMT" /*format*/,
12755  -1131 /*offset_code (-16965/15)*/,
12756  0 /*offset_remainder (-16965%15)*/,
12757  0 /*delta_minutes*/,
12758  1910 /*until_year*/,
12759  1 /*until_month*/,
12760  10 /*until_day*/,
12761  0 /*until_time_code (0/15)*/,
12762  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12763  },
12764  // -5:00 - -05 1916 Jul 1
12765  {
12766  NULL /*zone_policy*/,
12767  "-05" /*format*/,
12768  -1200 /*offset_code (-18000/15)*/,
12769  0 /*offset_remainder (-18000%15)*/,
12770  0 /*delta_minutes*/,
12771  1916 /*until_year*/,
12772  7 /*until_month*/,
12773  1 /*until_day*/,
12774  0 /*until_time_code (0/15)*/,
12775  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12776  },
12777  // -4:42:45 - SMT 1918 Sep 10
12778  {
12779  NULL /*zone_policy*/,
12780  "SMT" /*format*/,
12781  -1131 /*offset_code (-16965/15)*/,
12782  0 /*offset_remainder (-16965%15)*/,
12783  0 /*delta_minutes*/,
12784  1918 /*until_year*/,
12785  9 /*until_month*/,
12786  10 /*until_day*/,
12787  0 /*until_time_code (0/15)*/,
12788  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12789  },
12790  // -4:00 - -04 1919 Jul 1
12791  {
12792  NULL /*zone_policy*/,
12793  "-04" /*format*/,
12794  -960 /*offset_code (-14400/15)*/,
12795  0 /*offset_remainder (-14400%15)*/,
12796  0 /*delta_minutes*/,
12797  1919 /*until_year*/,
12798  7 /*until_month*/,
12799  1 /*until_day*/,
12800  0 /*until_time_code (0/15)*/,
12801  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12802  },
12803  // -4:42:45 - SMT 1927 Sep 1
12804  {
12805  NULL /*zone_policy*/,
12806  "SMT" /*format*/,
12807  -1131 /*offset_code (-16965/15)*/,
12808  0 /*offset_remainder (-16965%15)*/,
12809  0 /*delta_minutes*/,
12810  1927 /*until_year*/,
12811  9 /*until_month*/,
12812  1 /*until_day*/,
12813  0 /*until_time_code (0/15)*/,
12814  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12815  },
12816  // -5:00 Chile -05/-04 1932 Sep 1
12817  {
12818  &kAtcAllZonePolicyChile /*zone_policy*/,
12819  "-05/-04" /*format*/,
12820  -1200 /*offset_code (-18000/15)*/,
12821  0 /*offset_remainder (-18000%15)*/,
12822  0 /*delta_minutes*/,
12823  1932 /*until_year*/,
12824  9 /*until_month*/,
12825  1 /*until_day*/,
12826  0 /*until_time_code (0/15)*/,
12827  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12828  },
12829  // -4:00 - -04 1942 Jun 1
12830  {
12831  NULL /*zone_policy*/,
12832  "-04" /*format*/,
12833  -960 /*offset_code (-14400/15)*/,
12834  0 /*offset_remainder (-14400%15)*/,
12835  0 /*delta_minutes*/,
12836  1942 /*until_year*/,
12837  6 /*until_month*/,
12838  1 /*until_day*/,
12839  0 /*until_time_code (0/15)*/,
12840  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12841  },
12842  // -5:00 - -05 1942 Aug 1
12843  {
12844  NULL /*zone_policy*/,
12845  "-05" /*format*/,
12846  -1200 /*offset_code (-18000/15)*/,
12847  0 /*offset_remainder (-18000%15)*/,
12848  0 /*delta_minutes*/,
12849  1942 /*until_year*/,
12850  8 /*until_month*/,
12851  1 /*until_day*/,
12852  0 /*until_time_code (0/15)*/,
12853  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12854  },
12855  // -4:00 - -04 1946 Jul 14 24:00
12856  {
12857  NULL /*zone_policy*/,
12858  "-04" /*format*/,
12859  -960 /*offset_code (-14400/15)*/,
12860  0 /*offset_remainder (-14400%15)*/,
12861  0 /*delta_minutes*/,
12862  1946 /*until_year*/,
12863  7 /*until_month*/,
12864  14 /*until_day*/,
12865  5760 /*until_time_code (86400/15)*/,
12866  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12867  },
12868  // -4:00 1:00 -03 1946 Aug 28 24:00
12869  {
12870  NULL /*zone_policy*/,
12871  "-03" /*format*/,
12872  -960 /*offset_code (-14400/15)*/,
12873  0 /*offset_remainder (-14400%15)*/,
12874  60 /*delta_minutes*/,
12875  1946 /*until_year*/,
12876  8 /*until_month*/,
12877  28 /*until_day*/,
12878  5760 /*until_time_code (86400/15)*/,
12879  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12880  },
12881  // -5:00 1:00 -04 1947 Mar 31 24:00
12882  {
12883  NULL /*zone_policy*/,
12884  "-04" /*format*/,
12885  -1200 /*offset_code (-18000/15)*/,
12886  0 /*offset_remainder (-18000%15)*/,
12887  60 /*delta_minutes*/,
12888  1947 /*until_year*/,
12889  3 /*until_month*/,
12890  31 /*until_day*/,
12891  5760 /*until_time_code (86400/15)*/,
12892  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12893  },
12894  // -5:00 - -05 1947 May 21 23:00
12895  {
12896  NULL /*zone_policy*/,
12897  "-05" /*format*/,
12898  -1200 /*offset_code (-18000/15)*/,
12899  0 /*offset_remainder (-18000%15)*/,
12900  0 /*delta_minutes*/,
12901  1947 /*until_year*/,
12902  5 /*until_month*/,
12903  21 /*until_day*/,
12904  5520 /*until_time_code (82800/15)*/,
12905  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12906  },
12907  // -4:00 Chile -04/-03
12908  {
12909  &kAtcAllZonePolicyChile /*zone_policy*/,
12910  "-04/-03" /*format*/,
12911  -960 /*offset_code (-14400/15)*/,
12912  0 /*offset_remainder (-14400%15)*/,
12913  0 /*delta_minutes*/,
12914  32767 /*until_year*/,
12915  1 /*until_month*/,
12916  1 /*until_day*/,
12917  0 /*until_time_code (0/15)*/,
12918  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12919  },
12920 
12921 };
12922 
12923 static const char kAtcZoneNameAmerica_Santiago[] = "America/Santiago";
12924 
12925 const AtcZoneInfo kAtcAllZoneAmerica_Santiago = {
12926  kAtcZoneNameAmerica_Santiago /*name*/,
12927  0x7410c9bc /*zone_id*/,
12928  &kAtcAllZoneContext /*zone_context*/,
12929  14 /*num_eras*/,
12930  kAtcZoneEraAmerica_Santiago /*eras*/,
12931  NULL /*target_info*/,
12932 };
12933 
12934 //---------------------------------------------------------------------------
12935 // Zone name: America/Santo_Domingo
12936 // Zone Eras: 6
12937 //---------------------------------------------------------------------------
12938 
12939 static const AtcZoneEra kAtcZoneEraAmerica_Santo_Domingo[] = {
12940  // -4:39:36 - LMT 1890
12941  {
12942  NULL /*zone_policy*/,
12943  "LMT" /*format*/,
12944  -1119 /*offset_code (-16776/15)*/,
12945  9 /*offset_remainder (-16776%15)*/,
12946  0 /*delta_minutes*/,
12947  1890 /*until_year*/,
12948  1 /*until_month*/,
12949  1 /*until_day*/,
12950  0 /*until_time_code (0/15)*/,
12951  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12952  },
12953  // -4:40 - SDMT 1933 Apr 1 12:00
12954  {
12955  NULL /*zone_policy*/,
12956  "SDMT" /*format*/,
12957  -1120 /*offset_code (-16800/15)*/,
12958  0 /*offset_remainder (-16800%15)*/,
12959  0 /*delta_minutes*/,
12960  1933 /*until_year*/,
12961  4 /*until_month*/,
12962  1 /*until_day*/,
12963  2880 /*until_time_code (43200/15)*/,
12964  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12965  },
12966  // -5:00 DR %s 1974 Oct 27
12967  {
12968  &kAtcAllZonePolicyDR /*zone_policy*/,
12969  "%" /*format*/,
12970  -1200 /*offset_code (-18000/15)*/,
12971  0 /*offset_remainder (-18000%15)*/,
12972  0 /*delta_minutes*/,
12973  1974 /*until_year*/,
12974  10 /*until_month*/,
12975  27 /*until_day*/,
12976  0 /*until_time_code (0/15)*/,
12977  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12978  },
12979  // -4:00 - AST 2000 Oct 29 2:00
12980  {
12981  NULL /*zone_policy*/,
12982  "AST" /*format*/,
12983  -960 /*offset_code (-14400/15)*/,
12984  0 /*offset_remainder (-14400%15)*/,
12985  0 /*delta_minutes*/,
12986  2000 /*until_year*/,
12987  10 /*until_month*/,
12988  29 /*until_day*/,
12989  480 /*until_time_code (7200/15)*/,
12990  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
12991  },
12992  // -5:00 US E%sT 2000 Dec 3 1:00
12993  {
12994  &kAtcAllZonePolicyUS /*zone_policy*/,
12995  "E%T" /*format*/,
12996  -1200 /*offset_code (-18000/15)*/,
12997  0 /*offset_remainder (-18000%15)*/,
12998  0 /*delta_minutes*/,
12999  2000 /*until_year*/,
13000  12 /*until_month*/,
13001  3 /*until_day*/,
13002  240 /*until_time_code (3600/15)*/,
13003  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13004  },
13005  // -4:00 - AST
13006  {
13007  NULL /*zone_policy*/,
13008  "AST" /*format*/,
13009  -960 /*offset_code (-14400/15)*/,
13010  0 /*offset_remainder (-14400%15)*/,
13011  0 /*delta_minutes*/,
13012  32767 /*until_year*/,
13013  1 /*until_month*/,
13014  1 /*until_day*/,
13015  0 /*until_time_code (0/15)*/,
13016  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13017  },
13018 
13019 };
13020 
13021 static const char kAtcZoneNameAmerica_Santo_Domingo[] = "America/Santo_Domingo";
13022 
13023 const AtcZoneInfo kAtcAllZoneAmerica_Santo_Domingo = {
13024  kAtcZoneNameAmerica_Santo_Domingo /*name*/,
13025  0x75a0d177 /*zone_id*/,
13026  &kAtcAllZoneContext /*zone_context*/,
13027  6 /*num_eras*/,
13028  kAtcZoneEraAmerica_Santo_Domingo /*eras*/,
13029  NULL /*target_info*/,
13030 };
13031 
13032 //---------------------------------------------------------------------------
13033 // Zone name: America/Sao_Paulo
13034 // Zone Eras: 4
13035 //---------------------------------------------------------------------------
13036 
13037 static const AtcZoneEra kAtcZoneEraAmerica_Sao_Paulo[] = {
13038  // -3:06:28 - LMT 1914
13039  {
13040  NULL /*zone_policy*/,
13041  "LMT" /*format*/,
13042  -746 /*offset_code (-11188/15)*/,
13043  2 /*offset_remainder (-11188%15)*/,
13044  0 /*delta_minutes*/,
13045  1914 /*until_year*/,
13046  1 /*until_month*/,
13047  1 /*until_day*/,
13048  0 /*until_time_code (0/15)*/,
13049  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13050  },
13051  // -3:00 Brazil -03/-02 1963 Oct 23 0:00
13052  {
13053  &kAtcAllZonePolicyBrazil /*zone_policy*/,
13054  "-03/-02" /*format*/,
13055  -720 /*offset_code (-10800/15)*/,
13056  0 /*offset_remainder (-10800%15)*/,
13057  0 /*delta_minutes*/,
13058  1963 /*until_year*/,
13059  10 /*until_month*/,
13060  23 /*until_day*/,
13061  0 /*until_time_code (0/15)*/,
13062  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13063  },
13064  // -3:00 1:00 -02 1964
13065  {
13066  NULL /*zone_policy*/,
13067  "-02" /*format*/,
13068  -720 /*offset_code (-10800/15)*/,
13069  0 /*offset_remainder (-10800%15)*/,
13070  60 /*delta_minutes*/,
13071  1964 /*until_year*/,
13072  1 /*until_month*/,
13073  1 /*until_day*/,
13074  0 /*until_time_code (0/15)*/,
13075  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13076  },
13077  // -3:00 Brazil -03/-02
13078  {
13079  &kAtcAllZonePolicyBrazil /*zone_policy*/,
13080  "-03/-02" /*format*/,
13081  -720 /*offset_code (-10800/15)*/,
13082  0 /*offset_remainder (-10800%15)*/,
13083  0 /*delta_minutes*/,
13084  32767 /*until_year*/,
13085  1 /*until_month*/,
13086  1 /*until_day*/,
13087  0 /*until_time_code (0/15)*/,
13088  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13089  },
13090 
13091 };
13092 
13093 static const char kAtcZoneNameAmerica_Sao_Paulo[] = "America/Sao_Paulo";
13094 
13095 const AtcZoneInfo kAtcAllZoneAmerica_Sao_Paulo = {
13096  kAtcZoneNameAmerica_Sao_Paulo /*name*/,
13097  0x1063bfc9 /*zone_id*/,
13098  &kAtcAllZoneContext /*zone_context*/,
13099  4 /*num_eras*/,
13100  kAtcZoneEraAmerica_Sao_Paulo /*eras*/,
13101  NULL /*target_info*/,
13102 };
13103 
13104 //---------------------------------------------------------------------------
13105 // Zone name: America/Scoresbysund
13106 // Zone Eras: 4
13107 //---------------------------------------------------------------------------
13108 
13109 static const AtcZoneEra kAtcZoneEraAmerica_Scoresbysund[] = {
13110  // -1:27:52 - LMT 1916 Jul 28
13111  {
13112  NULL /*zone_policy*/,
13113  "LMT" /*format*/,
13114  -352 /*offset_code (-5272/15)*/,
13115  8 /*offset_remainder (-5272%15)*/,
13116  0 /*delta_minutes*/,
13117  1916 /*until_year*/,
13118  7 /*until_month*/,
13119  28 /*until_day*/,
13120  0 /*until_time_code (0/15)*/,
13121  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13122  },
13123  // -2:00 - -02 1980 Apr 6 2:00
13124  {
13125  NULL /*zone_policy*/,
13126  "-02" /*format*/,
13127  -480 /*offset_code (-7200/15)*/,
13128  0 /*offset_remainder (-7200%15)*/,
13129  0 /*delta_minutes*/,
13130  1980 /*until_year*/,
13131  4 /*until_month*/,
13132  6 /*until_day*/,
13133  480 /*until_time_code (7200/15)*/,
13134  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13135  },
13136  // -2:00 C-Eur -02/-01 1981 Mar 29
13137  {
13138  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
13139  "-02/-01" /*format*/,
13140  -480 /*offset_code (-7200/15)*/,
13141  0 /*offset_remainder (-7200%15)*/,
13142  0 /*delta_minutes*/,
13143  1981 /*until_year*/,
13144  3 /*until_month*/,
13145  29 /*until_day*/,
13146  0 /*until_time_code (0/15)*/,
13147  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13148  },
13149  // -1:00 EU -01/+00
13150  {
13151  &kAtcAllZonePolicyEU /*zone_policy*/,
13152  "-01/+00" /*format*/,
13153  -240 /*offset_code (-3600/15)*/,
13154  0 /*offset_remainder (-3600%15)*/,
13155  0 /*delta_minutes*/,
13156  32767 /*until_year*/,
13157  1 /*until_month*/,
13158  1 /*until_day*/,
13159  0 /*until_time_code (0/15)*/,
13160  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13161  },
13162 
13163 };
13164 
13165 static const char kAtcZoneNameAmerica_Scoresbysund[] = "America/Scoresbysund";
13166 
13167 const AtcZoneInfo kAtcAllZoneAmerica_Scoresbysund = {
13168  kAtcZoneNameAmerica_Scoresbysund /*name*/,
13169  0x123f8d2a /*zone_id*/,
13170  &kAtcAllZoneContext /*zone_context*/,
13171  4 /*num_eras*/,
13172  kAtcZoneEraAmerica_Scoresbysund /*eras*/,
13173  NULL /*target_info*/,
13174 };
13175 
13176 //---------------------------------------------------------------------------
13177 // Zone name: America/Sitka
13178 // Zone Eras: 8
13179 //---------------------------------------------------------------------------
13180 
13181 static const AtcZoneEra kAtcZoneEraAmerica_Sitka[] = {
13182  // 14:58:47 - LMT 1867 Oct 19 15:30
13183  {
13184  NULL /*zone_policy*/,
13185  "LMT" /*format*/,
13186  3595 /*offset_code (53927/15)*/,
13187  2 /*offset_remainder (53927%15)*/,
13188  0 /*delta_minutes*/,
13189  1867 /*until_year*/,
13190  10 /*until_month*/,
13191  19 /*until_day*/,
13192  3720 /*until_time_code (55800/15)*/,
13193  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13194  },
13195  // -9:01:13 - LMT 1900 Aug 20 12:00
13196  {
13197  NULL /*zone_policy*/,
13198  "LMT" /*format*/,
13199  -2165 /*offset_code (-32473/15)*/,
13200  2 /*offset_remainder (-32473%15)*/,
13201  0 /*delta_minutes*/,
13202  1900 /*until_year*/,
13203  8 /*until_month*/,
13204  20 /*until_day*/,
13205  2880 /*until_time_code (43200/15)*/,
13206  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13207  },
13208  // -8:00 - PST 1942
13209  {
13210  NULL /*zone_policy*/,
13211  "PST" /*format*/,
13212  -1920 /*offset_code (-28800/15)*/,
13213  0 /*offset_remainder (-28800%15)*/,
13214  0 /*delta_minutes*/,
13215  1942 /*until_year*/,
13216  1 /*until_month*/,
13217  1 /*until_day*/,
13218  0 /*until_time_code (0/15)*/,
13219  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13220  },
13221  // -8:00 US P%sT 1946
13222  {
13223  &kAtcAllZonePolicyUS /*zone_policy*/,
13224  "P%T" /*format*/,
13225  -1920 /*offset_code (-28800/15)*/,
13226  0 /*offset_remainder (-28800%15)*/,
13227  0 /*delta_minutes*/,
13228  1946 /*until_year*/,
13229  1 /*until_month*/,
13230  1 /*until_day*/,
13231  0 /*until_time_code (0/15)*/,
13232  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13233  },
13234  // -8:00 - PST 1969
13235  {
13236  NULL /*zone_policy*/,
13237  "PST" /*format*/,
13238  -1920 /*offset_code (-28800/15)*/,
13239  0 /*offset_remainder (-28800%15)*/,
13240  0 /*delta_minutes*/,
13241  1969 /*until_year*/,
13242  1 /*until_month*/,
13243  1 /*until_day*/,
13244  0 /*until_time_code (0/15)*/,
13245  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13246  },
13247  // -8:00 US P%sT 1983 Oct 30 2:00
13248  {
13249  &kAtcAllZonePolicyUS /*zone_policy*/,
13250  "P%T" /*format*/,
13251  -1920 /*offset_code (-28800/15)*/,
13252  0 /*offset_remainder (-28800%15)*/,
13253  0 /*delta_minutes*/,
13254  1983 /*until_year*/,
13255  10 /*until_month*/,
13256  30 /*until_day*/,
13257  480 /*until_time_code (7200/15)*/,
13258  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13259  },
13260  // -9:00 US Y%sT 1983 Nov 30
13261  {
13262  &kAtcAllZonePolicyUS /*zone_policy*/,
13263  "Y%T" /*format*/,
13264  -2160 /*offset_code (-32400/15)*/,
13265  0 /*offset_remainder (-32400%15)*/,
13266  0 /*delta_minutes*/,
13267  1983 /*until_year*/,
13268  11 /*until_month*/,
13269  30 /*until_day*/,
13270  0 /*until_time_code (0/15)*/,
13271  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13272  },
13273  // -9:00 US AK%sT
13274  {
13275  &kAtcAllZonePolicyUS /*zone_policy*/,
13276  "AK%T" /*format*/,
13277  -2160 /*offset_code (-32400/15)*/,
13278  0 /*offset_remainder (-32400%15)*/,
13279  0 /*delta_minutes*/,
13280  32767 /*until_year*/,
13281  1 /*until_month*/,
13282  1 /*until_day*/,
13283  0 /*until_time_code (0/15)*/,
13284  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13285  },
13286 
13287 };
13288 
13289 static const char kAtcZoneNameAmerica_Sitka[] = "America/Sitka";
13290 
13291 const AtcZoneInfo kAtcAllZoneAmerica_Sitka = {
13292  kAtcZoneNameAmerica_Sitka /*name*/,
13293  0x99104ce2 /*zone_id*/,
13294  &kAtcAllZoneContext /*zone_context*/,
13295  8 /*num_eras*/,
13296  kAtcZoneEraAmerica_Sitka /*eras*/,
13297  NULL /*target_info*/,
13298 };
13299 
13300 //---------------------------------------------------------------------------
13301 // Zone name: America/St_Johns
13302 // Zone Eras: 8
13303 //---------------------------------------------------------------------------
13304 
13305 static const AtcZoneEra kAtcZoneEraAmerica_St_Johns[] = {
13306  // -3:30:52 - LMT 1884
13307  {
13308  NULL /*zone_policy*/,
13309  "LMT" /*format*/,
13310  -844 /*offset_code (-12652/15)*/,
13311  8 /*offset_remainder (-12652%15)*/,
13312  0 /*delta_minutes*/,
13313  1884 /*until_year*/,
13314  1 /*until_month*/,
13315  1 /*until_day*/,
13316  0 /*until_time_code (0/15)*/,
13317  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13318  },
13319  // -3:30:52 StJohns N%sT 1918
13320  {
13321  &kAtcAllZonePolicyStJohns /*zone_policy*/,
13322  "N%T" /*format*/,
13323  -844 /*offset_code (-12652/15)*/,
13324  8 /*offset_remainder (-12652%15)*/,
13325  0 /*delta_minutes*/,
13326  1918 /*until_year*/,
13327  1 /*until_month*/,
13328  1 /*until_day*/,
13329  0 /*until_time_code (0/15)*/,
13330  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13331  },
13332  // -3:30:52 Canada N%sT 1919
13333  {
13334  &kAtcAllZonePolicyCanada /*zone_policy*/,
13335  "N%T" /*format*/,
13336  -844 /*offset_code (-12652/15)*/,
13337  8 /*offset_remainder (-12652%15)*/,
13338  0 /*delta_minutes*/,
13339  1919 /*until_year*/,
13340  1 /*until_month*/,
13341  1 /*until_day*/,
13342  0 /*until_time_code (0/15)*/,
13343  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13344  },
13345  // -3:30:52 StJohns N%sT 1935 Mar 30
13346  {
13347  &kAtcAllZonePolicyStJohns /*zone_policy*/,
13348  "N%T" /*format*/,
13349  -844 /*offset_code (-12652/15)*/,
13350  8 /*offset_remainder (-12652%15)*/,
13351  0 /*delta_minutes*/,
13352  1935 /*until_year*/,
13353  3 /*until_month*/,
13354  30 /*until_day*/,
13355  0 /*until_time_code (0/15)*/,
13356  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13357  },
13358  // -3:30 StJohns N%sT 1942 May 11
13359  {
13360  &kAtcAllZonePolicyStJohns /*zone_policy*/,
13361  "N%T" /*format*/,
13362  -840 /*offset_code (-12600/15)*/,
13363  0 /*offset_remainder (-12600%15)*/,
13364  0 /*delta_minutes*/,
13365  1942 /*until_year*/,
13366  5 /*until_month*/,
13367  11 /*until_day*/,
13368  0 /*until_time_code (0/15)*/,
13369  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13370  },
13371  // -3:30 Canada N%sT 1946
13372  {
13373  &kAtcAllZonePolicyCanada /*zone_policy*/,
13374  "N%T" /*format*/,
13375  -840 /*offset_code (-12600/15)*/,
13376  0 /*offset_remainder (-12600%15)*/,
13377  0 /*delta_minutes*/,
13378  1946 /*until_year*/,
13379  1 /*until_month*/,
13380  1 /*until_day*/,
13381  0 /*until_time_code (0/15)*/,
13382  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13383  },
13384  // -3:30 StJohns N%sT 2011 Nov
13385  {
13386  &kAtcAllZonePolicyStJohns /*zone_policy*/,
13387  "N%T" /*format*/,
13388  -840 /*offset_code (-12600/15)*/,
13389  0 /*offset_remainder (-12600%15)*/,
13390  0 /*delta_minutes*/,
13391  2011 /*until_year*/,
13392  11 /*until_month*/,
13393  1 /*until_day*/,
13394  0 /*until_time_code (0/15)*/,
13395  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13396  },
13397  // -3:30 Canada N%sT
13398  {
13399  &kAtcAllZonePolicyCanada /*zone_policy*/,
13400  "N%T" /*format*/,
13401  -840 /*offset_code (-12600/15)*/,
13402  0 /*offset_remainder (-12600%15)*/,
13403  0 /*delta_minutes*/,
13404  32767 /*until_year*/,
13405  1 /*until_month*/,
13406  1 /*until_day*/,
13407  0 /*until_time_code (0/15)*/,
13408  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13409  },
13410 
13411 };
13412 
13413 static const char kAtcZoneNameAmerica_St_Johns[] = "America/St_Johns";
13414 
13415 const AtcZoneInfo kAtcAllZoneAmerica_St_Johns = {
13416  kAtcZoneNameAmerica_St_Johns /*name*/,
13417  0x04b14e6e /*zone_id*/,
13418  &kAtcAllZoneContext /*zone_context*/,
13419  8 /*num_eras*/,
13420  kAtcZoneEraAmerica_St_Johns /*eras*/,
13421  NULL /*target_info*/,
13422 };
13423 
13424 //---------------------------------------------------------------------------
13425 // Zone name: America/Swift_Current
13426 // Zone Eras: 5
13427 //---------------------------------------------------------------------------
13428 
13429 static const AtcZoneEra kAtcZoneEraAmerica_Swift_Current[] = {
13430  // -7:11:20 - LMT 1905 Sep
13431  {
13432  NULL /*zone_policy*/,
13433  "LMT" /*format*/,
13434  -1726 /*offset_code (-25880/15)*/,
13435  10 /*offset_remainder (-25880%15)*/,
13436  0 /*delta_minutes*/,
13437  1905 /*until_year*/,
13438  9 /*until_month*/,
13439  1 /*until_day*/,
13440  0 /*until_time_code (0/15)*/,
13441  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13442  },
13443  // -7:00 Canada M%sT 1946 Apr lastSun 2:00
13444  {
13445  &kAtcAllZonePolicyCanada /*zone_policy*/,
13446  "M%T" /*format*/,
13447  -1680 /*offset_code (-25200/15)*/,
13448  0 /*offset_remainder (-25200%15)*/,
13449  0 /*delta_minutes*/,
13450  1946 /*until_year*/,
13451  4 /*until_month*/,
13452  28 /*until_day*/,
13453  480 /*until_time_code (7200/15)*/,
13454  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13455  },
13456  // -7:00 Regina M%sT 1950
13457  {
13458  &kAtcAllZonePolicyRegina /*zone_policy*/,
13459  "M%T" /*format*/,
13460  -1680 /*offset_code (-25200/15)*/,
13461  0 /*offset_remainder (-25200%15)*/,
13462  0 /*delta_minutes*/,
13463  1950 /*until_year*/,
13464  1 /*until_month*/,
13465  1 /*until_day*/,
13466  0 /*until_time_code (0/15)*/,
13467  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13468  },
13469  // -7:00 Swift M%sT 1972 Apr lastSun 2:00
13470  {
13471  &kAtcAllZonePolicySwift /*zone_policy*/,
13472  "M%T" /*format*/,
13473  -1680 /*offset_code (-25200/15)*/,
13474  0 /*offset_remainder (-25200%15)*/,
13475  0 /*delta_minutes*/,
13476  1972 /*until_year*/,
13477  4 /*until_month*/,
13478  30 /*until_day*/,
13479  480 /*until_time_code (7200/15)*/,
13480  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13481  },
13482  // -6:00 - CST
13483  {
13484  NULL /*zone_policy*/,
13485  "CST" /*format*/,
13486  -1440 /*offset_code (-21600/15)*/,
13487  0 /*offset_remainder (-21600%15)*/,
13488  0 /*delta_minutes*/,
13489  32767 /*until_year*/,
13490  1 /*until_month*/,
13491  1 /*until_day*/,
13492  0 /*until_time_code (0/15)*/,
13493  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13494  },
13495 
13496 };
13497 
13498 static const char kAtcZoneNameAmerica_Swift_Current[] = "America/Swift_Current";
13499 
13500 const AtcZoneInfo kAtcAllZoneAmerica_Swift_Current = {
13501  kAtcZoneNameAmerica_Swift_Current /*name*/,
13502  0xdef98e55 /*zone_id*/,
13503  &kAtcAllZoneContext /*zone_context*/,
13504  5 /*num_eras*/,
13505  kAtcZoneEraAmerica_Swift_Current /*eras*/,
13506  NULL /*target_info*/,
13507 };
13508 
13509 //---------------------------------------------------------------------------
13510 // Zone name: America/Tegucigalpa
13511 // Zone Eras: 2
13512 //---------------------------------------------------------------------------
13513 
13514 static const AtcZoneEra kAtcZoneEraAmerica_Tegucigalpa[] = {
13515  // -5:48:52 - LMT 1921 Apr
13516  {
13517  NULL /*zone_policy*/,
13518  "LMT" /*format*/,
13519  -1396 /*offset_code (-20932/15)*/,
13520  8 /*offset_remainder (-20932%15)*/,
13521  0 /*delta_minutes*/,
13522  1921 /*until_year*/,
13523  4 /*until_month*/,
13524  1 /*until_day*/,
13525  0 /*until_time_code (0/15)*/,
13526  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13527  },
13528  // -6:00 Hond C%sT
13529  {
13530  &kAtcAllZonePolicyHond /*zone_policy*/,
13531  "C%T" /*format*/,
13532  -1440 /*offset_code (-21600/15)*/,
13533  0 /*offset_remainder (-21600%15)*/,
13534  0 /*delta_minutes*/,
13535  32767 /*until_year*/,
13536  1 /*until_month*/,
13537  1 /*until_day*/,
13538  0 /*until_time_code (0/15)*/,
13539  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13540  },
13541 
13542 };
13543 
13544 static const char kAtcZoneNameAmerica_Tegucigalpa[] = "America/Tegucigalpa";
13545 
13546 const AtcZoneInfo kAtcAllZoneAmerica_Tegucigalpa = {
13547  kAtcZoneNameAmerica_Tegucigalpa /*name*/,
13548  0xbfd6fd4c /*zone_id*/,
13549  &kAtcAllZoneContext /*zone_context*/,
13550  2 /*num_eras*/,
13551  kAtcZoneEraAmerica_Tegucigalpa /*eras*/,
13552  NULL /*target_info*/,
13553 };
13554 
13555 //---------------------------------------------------------------------------
13556 // Zone name: America/Thule
13557 // Zone Eras: 2
13558 //---------------------------------------------------------------------------
13559 
13560 static const AtcZoneEra kAtcZoneEraAmerica_Thule[] = {
13561  // -4:35:08 - LMT 1916 Jul 28
13562  {
13563  NULL /*zone_policy*/,
13564  "LMT" /*format*/,
13565  -1101 /*offset_code (-16508/15)*/,
13566  7 /*offset_remainder (-16508%15)*/,
13567  0 /*delta_minutes*/,
13568  1916 /*until_year*/,
13569  7 /*until_month*/,
13570  28 /*until_day*/,
13571  0 /*until_time_code (0/15)*/,
13572  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13573  },
13574  // -4:00 Thule A%sT
13575  {
13576  &kAtcAllZonePolicyThule /*zone_policy*/,
13577  "A%T" /*format*/,
13578  -960 /*offset_code (-14400/15)*/,
13579  0 /*offset_remainder (-14400%15)*/,
13580  0 /*delta_minutes*/,
13581  32767 /*until_year*/,
13582  1 /*until_month*/,
13583  1 /*until_day*/,
13584  0 /*until_time_code (0/15)*/,
13585  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13586  },
13587 
13588 };
13589 
13590 static const char kAtcZoneNameAmerica_Thule[] = "America/Thule";
13591 
13592 const AtcZoneInfo kAtcAllZoneAmerica_Thule = {
13593  kAtcZoneNameAmerica_Thule /*name*/,
13594  0x9921dd68 /*zone_id*/,
13595  &kAtcAllZoneContext /*zone_context*/,
13596  2 /*num_eras*/,
13597  kAtcZoneEraAmerica_Thule /*eras*/,
13598  NULL /*target_info*/,
13599 };
13600 
13601 //---------------------------------------------------------------------------
13602 // Zone name: America/Tijuana
13603 // Zone Eras: 19
13604 //---------------------------------------------------------------------------
13605 
13606 static const AtcZoneEra kAtcZoneEraAmerica_Tijuana[] = {
13607  // -7:48:04 - LMT 1922 Jan 1 7:00u
13608  {
13609  NULL /*zone_policy*/,
13610  "LMT" /*format*/,
13611  -1873 /*offset_code (-28084/15)*/,
13612  11 /*offset_remainder (-28084%15)*/,
13613  0 /*delta_minutes*/,
13614  1922 /*until_year*/,
13615  1 /*until_month*/,
13616  1 /*until_day*/,
13617  1680 /*until_time_code (25200/15)*/,
13618  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
13619  },
13620  // -7:00 - MST 1924
13621  {
13622  NULL /*zone_policy*/,
13623  "MST" /*format*/,
13624  -1680 /*offset_code (-25200/15)*/,
13625  0 /*offset_remainder (-25200%15)*/,
13626  0 /*delta_minutes*/,
13627  1924 /*until_year*/,
13628  1 /*until_month*/,
13629  1 /*until_day*/,
13630  0 /*until_time_code (0/15)*/,
13631  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13632  },
13633  // -8:00 - PST 1927 Jun 10 23:00
13634  {
13635  NULL /*zone_policy*/,
13636  "PST" /*format*/,
13637  -1920 /*offset_code (-28800/15)*/,
13638  0 /*offset_remainder (-28800%15)*/,
13639  0 /*delta_minutes*/,
13640  1927 /*until_year*/,
13641  6 /*until_month*/,
13642  10 /*until_day*/,
13643  5520 /*until_time_code (82800/15)*/,
13644  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13645  },
13646  // -7:00 - MST 1930 Nov 15
13647  {
13648  NULL /*zone_policy*/,
13649  "MST" /*format*/,
13650  -1680 /*offset_code (-25200/15)*/,
13651  0 /*offset_remainder (-25200%15)*/,
13652  0 /*delta_minutes*/,
13653  1930 /*until_year*/,
13654  11 /*until_month*/,
13655  15 /*until_day*/,
13656  0 /*until_time_code (0/15)*/,
13657  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13658  },
13659  // -8:00 - PST 1931 Apr 1
13660  {
13661  NULL /*zone_policy*/,
13662  "PST" /*format*/,
13663  -1920 /*offset_code (-28800/15)*/,
13664  0 /*offset_remainder (-28800%15)*/,
13665  0 /*delta_minutes*/,
13666  1931 /*until_year*/,
13667  4 /*until_month*/,
13668  1 /*until_day*/,
13669  0 /*until_time_code (0/15)*/,
13670  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13671  },
13672  // -8:00 1:00 PDT 1931 Sep 30
13673  {
13674  NULL /*zone_policy*/,
13675  "PDT" /*format*/,
13676  -1920 /*offset_code (-28800/15)*/,
13677  0 /*offset_remainder (-28800%15)*/,
13678  60 /*delta_minutes*/,
13679  1931 /*until_year*/,
13680  9 /*until_month*/,
13681  30 /*until_day*/,
13682  0 /*until_time_code (0/15)*/,
13683  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13684  },
13685  // -8:00 - PST 1942 Apr 24
13686  {
13687  NULL /*zone_policy*/,
13688  "PST" /*format*/,
13689  -1920 /*offset_code (-28800/15)*/,
13690  0 /*offset_remainder (-28800%15)*/,
13691  0 /*delta_minutes*/,
13692  1942 /*until_year*/,
13693  4 /*until_month*/,
13694  24 /*until_day*/,
13695  0 /*until_time_code (0/15)*/,
13696  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13697  },
13698  // -8:00 1:00 PWT 1945 Aug 14 23:00u
13699  {
13700  NULL /*zone_policy*/,
13701  "PWT" /*format*/,
13702  -1920 /*offset_code (-28800/15)*/,
13703  0 /*offset_remainder (-28800%15)*/,
13704  60 /*delta_minutes*/,
13705  1945 /*until_year*/,
13706  8 /*until_month*/,
13707  14 /*until_day*/,
13708  5520 /*until_time_code (82800/15)*/,
13709  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
13710  },
13711  // -8:00 1:00 PPT 1945 Nov 12
13712  {
13713  NULL /*zone_policy*/,
13714  "PPT" /*format*/,
13715  -1920 /*offset_code (-28800/15)*/,
13716  0 /*offset_remainder (-28800%15)*/,
13717  60 /*delta_minutes*/,
13718  1945 /*until_year*/,
13719  11 /*until_month*/,
13720  12 /*until_day*/,
13721  0 /*until_time_code (0/15)*/,
13722  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13723  },
13724  // -8:00 - PST 1948 Apr 5
13725  {
13726  NULL /*zone_policy*/,
13727  "PST" /*format*/,
13728  -1920 /*offset_code (-28800/15)*/,
13729  0 /*offset_remainder (-28800%15)*/,
13730  0 /*delta_minutes*/,
13731  1948 /*until_year*/,
13732  4 /*until_month*/,
13733  5 /*until_day*/,
13734  0 /*until_time_code (0/15)*/,
13735  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13736  },
13737  // -8:00 1:00 PDT 1949 Jan 14
13738  {
13739  NULL /*zone_policy*/,
13740  "PDT" /*format*/,
13741  -1920 /*offset_code (-28800/15)*/,
13742  0 /*offset_remainder (-28800%15)*/,
13743  60 /*delta_minutes*/,
13744  1949 /*until_year*/,
13745  1 /*until_month*/,
13746  14 /*until_day*/,
13747  0 /*until_time_code (0/15)*/,
13748  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13749  },
13750  // -8:00 - PST 1954
13751  {
13752  NULL /*zone_policy*/,
13753  "PST" /*format*/,
13754  -1920 /*offset_code (-28800/15)*/,
13755  0 /*offset_remainder (-28800%15)*/,
13756  0 /*delta_minutes*/,
13757  1954 /*until_year*/,
13758  1 /*until_month*/,
13759  1 /*until_day*/,
13760  0 /*until_time_code (0/15)*/,
13761  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13762  },
13763  // -8:00 CA P%sT 1961
13764  {
13765  &kAtcAllZonePolicyCA /*zone_policy*/,
13766  "P%T" /*format*/,
13767  -1920 /*offset_code (-28800/15)*/,
13768  0 /*offset_remainder (-28800%15)*/,
13769  0 /*delta_minutes*/,
13770  1961 /*until_year*/,
13771  1 /*until_month*/,
13772  1 /*until_day*/,
13773  0 /*until_time_code (0/15)*/,
13774  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13775  },
13776  // -8:00 - PST 1976
13777  {
13778  NULL /*zone_policy*/,
13779  "PST" /*format*/,
13780  -1920 /*offset_code (-28800/15)*/,
13781  0 /*offset_remainder (-28800%15)*/,
13782  0 /*delta_minutes*/,
13783  1976 /*until_year*/,
13784  1 /*until_month*/,
13785  1 /*until_day*/,
13786  0 /*until_time_code (0/15)*/,
13787  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13788  },
13789  // -8:00 US P%sT 1996
13790  {
13791  &kAtcAllZonePolicyUS /*zone_policy*/,
13792  "P%T" /*format*/,
13793  -1920 /*offset_code (-28800/15)*/,
13794  0 /*offset_remainder (-28800%15)*/,
13795  0 /*delta_minutes*/,
13796  1996 /*until_year*/,
13797  1 /*until_month*/,
13798  1 /*until_day*/,
13799  0 /*until_time_code (0/15)*/,
13800  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13801  },
13802  // -8:00 Mexico P%sT 2001
13803  {
13804  &kAtcAllZonePolicyMexico /*zone_policy*/,
13805  "P%T" /*format*/,
13806  -1920 /*offset_code (-28800/15)*/,
13807  0 /*offset_remainder (-28800%15)*/,
13808  0 /*delta_minutes*/,
13809  2001 /*until_year*/,
13810  1 /*until_month*/,
13811  1 /*until_day*/,
13812  0 /*until_time_code (0/15)*/,
13813  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13814  },
13815  // -8:00 US P%sT 2002 Feb 20
13816  {
13817  &kAtcAllZonePolicyUS /*zone_policy*/,
13818  "P%T" /*format*/,
13819  -1920 /*offset_code (-28800/15)*/,
13820  0 /*offset_remainder (-28800%15)*/,
13821  0 /*delta_minutes*/,
13822  2002 /*until_year*/,
13823  2 /*until_month*/,
13824  20 /*until_day*/,
13825  0 /*until_time_code (0/15)*/,
13826  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13827  },
13828  // -8:00 Mexico P%sT 2010
13829  {
13830  &kAtcAllZonePolicyMexico /*zone_policy*/,
13831  "P%T" /*format*/,
13832  -1920 /*offset_code (-28800/15)*/,
13833  0 /*offset_remainder (-28800%15)*/,
13834  0 /*delta_minutes*/,
13835  2010 /*until_year*/,
13836  1 /*until_month*/,
13837  1 /*until_day*/,
13838  0 /*until_time_code (0/15)*/,
13839  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13840  },
13841  // -8:00 US P%sT
13842  {
13843  &kAtcAllZonePolicyUS /*zone_policy*/,
13844  "P%T" /*format*/,
13845  -1920 /*offset_code (-28800/15)*/,
13846  0 /*offset_remainder (-28800%15)*/,
13847  0 /*delta_minutes*/,
13848  32767 /*until_year*/,
13849  1 /*until_month*/,
13850  1 /*until_day*/,
13851  0 /*until_time_code (0/15)*/,
13852  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13853  },
13854 
13855 };
13856 
13857 static const char kAtcZoneNameAmerica_Tijuana[] = "America/Tijuana";
13858 
13859 const AtcZoneInfo kAtcAllZoneAmerica_Tijuana = {
13860  kAtcZoneNameAmerica_Tijuana /*name*/,
13861  0x6aa1df72 /*zone_id*/,
13862  &kAtcAllZoneContext /*zone_context*/,
13863  19 /*num_eras*/,
13864  kAtcZoneEraAmerica_Tijuana /*eras*/,
13865  NULL /*target_info*/,
13866 };
13867 
13868 //---------------------------------------------------------------------------
13869 // Zone name: America/Toronto
13870 // Zone Eras: 6
13871 //---------------------------------------------------------------------------
13872 
13873 static const AtcZoneEra kAtcZoneEraAmerica_Toronto[] = {
13874  // -5:17:32 - LMT 1895
13875  {
13876  NULL /*zone_policy*/,
13877  "LMT" /*format*/,
13878  -1271 /*offset_code (-19052/15)*/,
13879  13 /*offset_remainder (-19052%15)*/,
13880  0 /*delta_minutes*/,
13881  1895 /*until_year*/,
13882  1 /*until_month*/,
13883  1 /*until_day*/,
13884  0 /*until_time_code (0/15)*/,
13885  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13886  },
13887  // -5:00 Canada E%sT 1919
13888  {
13889  &kAtcAllZonePolicyCanada /*zone_policy*/,
13890  "E%T" /*format*/,
13891  -1200 /*offset_code (-18000/15)*/,
13892  0 /*offset_remainder (-18000%15)*/,
13893  0 /*delta_minutes*/,
13894  1919 /*until_year*/,
13895  1 /*until_month*/,
13896  1 /*until_day*/,
13897  0 /*until_time_code (0/15)*/,
13898  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13899  },
13900  // -5:00 Toronto E%sT 1942 Feb 9 2:00s
13901  {
13902  &kAtcAllZonePolicyToronto /*zone_policy*/,
13903  "E%T" /*format*/,
13904  -1200 /*offset_code (-18000/15)*/,
13905  0 /*offset_remainder (-18000%15)*/,
13906  0 /*delta_minutes*/,
13907  1942 /*until_year*/,
13908  2 /*until_month*/,
13909  9 /*until_day*/,
13910  480 /*until_time_code (7200/15)*/,
13911  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
13912  },
13913  // -5:00 Canada E%sT 1946
13914  {
13915  &kAtcAllZonePolicyCanada /*zone_policy*/,
13916  "E%T" /*format*/,
13917  -1200 /*offset_code (-18000/15)*/,
13918  0 /*offset_remainder (-18000%15)*/,
13919  0 /*delta_minutes*/,
13920  1946 /*until_year*/,
13921  1 /*until_month*/,
13922  1 /*until_day*/,
13923  0 /*until_time_code (0/15)*/,
13924  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13925  },
13926  // -5:00 Toronto E%sT 1974
13927  {
13928  &kAtcAllZonePolicyToronto /*zone_policy*/,
13929  "E%T" /*format*/,
13930  -1200 /*offset_code (-18000/15)*/,
13931  0 /*offset_remainder (-18000%15)*/,
13932  0 /*delta_minutes*/,
13933  1974 /*until_year*/,
13934  1 /*until_month*/,
13935  1 /*until_day*/,
13936  0 /*until_time_code (0/15)*/,
13937  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13938  },
13939  // -5:00 Canada E%sT
13940  {
13941  &kAtcAllZonePolicyCanada /*zone_policy*/,
13942  "E%T" /*format*/,
13943  -1200 /*offset_code (-18000/15)*/,
13944  0 /*offset_remainder (-18000%15)*/,
13945  0 /*delta_minutes*/,
13946  32767 /*until_year*/,
13947  1 /*until_month*/,
13948  1 /*until_day*/,
13949  0 /*until_time_code (0/15)*/,
13950  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13951  },
13952 
13953 };
13954 
13955 static const char kAtcZoneNameAmerica_Toronto[] = "America/Toronto";
13956 
13957 const AtcZoneInfo kAtcAllZoneAmerica_Toronto = {
13958  kAtcZoneNameAmerica_Toronto /*name*/,
13959  0x792e851b /*zone_id*/,
13960  &kAtcAllZoneContext /*zone_context*/,
13961  6 /*num_eras*/,
13962  kAtcZoneEraAmerica_Toronto /*eras*/,
13963  NULL /*target_info*/,
13964 };
13965 
13966 //---------------------------------------------------------------------------
13967 // Zone name: America/Vancouver
13968 // Zone Eras: 3
13969 //---------------------------------------------------------------------------
13970 
13971 static const AtcZoneEra kAtcZoneEraAmerica_Vancouver[] = {
13972  // -8:12:28 - LMT 1884
13973  {
13974  NULL /*zone_policy*/,
13975  "LMT" /*format*/,
13976  -1970 /*offset_code (-29548/15)*/,
13977  2 /*offset_remainder (-29548%15)*/,
13978  0 /*delta_minutes*/,
13979  1884 /*until_year*/,
13980  1 /*until_month*/,
13981  1 /*until_day*/,
13982  0 /*until_time_code (0/15)*/,
13983  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13984  },
13985  // -8:00 Vanc P%sT 1987
13986  {
13987  &kAtcAllZonePolicyVanc /*zone_policy*/,
13988  "P%T" /*format*/,
13989  -1920 /*offset_code (-28800/15)*/,
13990  0 /*offset_remainder (-28800%15)*/,
13991  0 /*delta_minutes*/,
13992  1987 /*until_year*/,
13993  1 /*until_month*/,
13994  1 /*until_day*/,
13995  0 /*until_time_code (0/15)*/,
13996  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
13997  },
13998  // -8:00 Canada P%sT
13999  {
14000  &kAtcAllZonePolicyCanada /*zone_policy*/,
14001  "P%T" /*format*/,
14002  -1920 /*offset_code (-28800/15)*/,
14003  0 /*offset_remainder (-28800%15)*/,
14004  0 /*delta_minutes*/,
14005  32767 /*until_year*/,
14006  1 /*until_month*/,
14007  1 /*until_day*/,
14008  0 /*until_time_code (0/15)*/,
14009  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14010  },
14011 
14012 };
14013 
14014 static const char kAtcZoneNameAmerica_Vancouver[] = "America/Vancouver";
14015 
14016 const AtcZoneInfo kAtcAllZoneAmerica_Vancouver = {
14017  kAtcZoneNameAmerica_Vancouver /*name*/,
14018  0x2c6f6b1f /*zone_id*/,
14019  &kAtcAllZoneContext /*zone_context*/,
14020  3 /*num_eras*/,
14021  kAtcZoneEraAmerica_Vancouver /*eras*/,
14022  NULL /*target_info*/,
14023 };
14024 
14025 //---------------------------------------------------------------------------
14026 // Zone name: America/Whitehorse
14027 // Zone Eras: 6
14028 //---------------------------------------------------------------------------
14029 
14030 static const AtcZoneEra kAtcZoneEraAmerica_Whitehorse[] = {
14031  // -9:00:12 - LMT 1900 Aug 20
14032  {
14033  NULL /*zone_policy*/,
14034  "LMT" /*format*/,
14035  -2161 /*offset_code (-32412/15)*/,
14036  3 /*offset_remainder (-32412%15)*/,
14037  0 /*delta_minutes*/,
14038  1900 /*until_year*/,
14039  8 /*until_month*/,
14040  20 /*until_day*/,
14041  0 /*until_time_code (0/15)*/,
14042  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14043  },
14044  // -9:00 NT_YK Y%sT 1965
14045  {
14046  &kAtcAllZonePolicyNT_YK /*zone_policy*/,
14047  "Y%T" /*format*/,
14048  -2160 /*offset_code (-32400/15)*/,
14049  0 /*offset_remainder (-32400%15)*/,
14050  0 /*delta_minutes*/,
14051  1965 /*until_year*/,
14052  1 /*until_month*/,
14053  1 /*until_day*/,
14054  0 /*until_time_code (0/15)*/,
14055  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14056  },
14057  // -9:00 Yukon Y%sT 1966 Feb 27 0:00
14058  {
14059  &kAtcAllZonePolicyYukon /*zone_policy*/,
14060  "Y%T" /*format*/,
14061  -2160 /*offset_code (-32400/15)*/,
14062  0 /*offset_remainder (-32400%15)*/,
14063  0 /*delta_minutes*/,
14064  1966 /*until_year*/,
14065  2 /*until_month*/,
14066  27 /*until_day*/,
14067  0 /*until_time_code (0/15)*/,
14068  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14069  },
14070  // -8:00 - PST 1980
14071  {
14072  NULL /*zone_policy*/,
14073  "PST" /*format*/,
14074  -1920 /*offset_code (-28800/15)*/,
14075  0 /*offset_remainder (-28800%15)*/,
14076  0 /*delta_minutes*/,
14077  1980 /*until_year*/,
14078  1 /*until_month*/,
14079  1 /*until_day*/,
14080  0 /*until_time_code (0/15)*/,
14081  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14082  },
14083  // -8:00 Canada P%sT 2020 Nov 1
14084  {
14085  &kAtcAllZonePolicyCanada /*zone_policy*/,
14086  "P%T" /*format*/,
14087  -1920 /*offset_code (-28800/15)*/,
14088  0 /*offset_remainder (-28800%15)*/,
14089  0 /*delta_minutes*/,
14090  2020 /*until_year*/,
14091  11 /*until_month*/,
14092  1 /*until_day*/,
14093  0 /*until_time_code (0/15)*/,
14094  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14095  },
14096  // -7:00 - MST
14097  {
14098  NULL /*zone_policy*/,
14099  "MST" /*format*/,
14100  -1680 /*offset_code (-25200/15)*/,
14101  0 /*offset_remainder (-25200%15)*/,
14102  0 /*delta_minutes*/,
14103  32767 /*until_year*/,
14104  1 /*until_month*/,
14105  1 /*until_day*/,
14106  0 /*until_time_code (0/15)*/,
14107  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14108  },
14109 
14110 };
14111 
14112 static const char kAtcZoneNameAmerica_Whitehorse[] = "America/Whitehorse";
14113 
14114 const AtcZoneInfo kAtcAllZoneAmerica_Whitehorse = {
14115  kAtcZoneNameAmerica_Whitehorse /*name*/,
14116  0x54e0e3e8 /*zone_id*/,
14117  &kAtcAllZoneContext /*zone_context*/,
14118  6 /*num_eras*/,
14119  kAtcZoneEraAmerica_Whitehorse /*eras*/,
14120  NULL /*target_info*/,
14121 };
14122 
14123 //---------------------------------------------------------------------------
14124 // Zone name: America/Winnipeg
14125 // Zone Eras: 3
14126 //---------------------------------------------------------------------------
14127 
14128 static const AtcZoneEra kAtcZoneEraAmerica_Winnipeg[] = {
14129  // -6:28:36 - LMT 1887 Jul 16
14130  {
14131  NULL /*zone_policy*/,
14132  "LMT" /*format*/,
14133  -1555 /*offset_code (-23316/15)*/,
14134  9 /*offset_remainder (-23316%15)*/,
14135  0 /*delta_minutes*/,
14136  1887 /*until_year*/,
14137  7 /*until_month*/,
14138  16 /*until_day*/,
14139  0 /*until_time_code (0/15)*/,
14140  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14141  },
14142  // -6:00 Winn C%sT 2006
14143  {
14144  &kAtcAllZonePolicyWinn /*zone_policy*/,
14145  "C%T" /*format*/,
14146  -1440 /*offset_code (-21600/15)*/,
14147  0 /*offset_remainder (-21600%15)*/,
14148  0 /*delta_minutes*/,
14149  2006 /*until_year*/,
14150  1 /*until_month*/,
14151  1 /*until_day*/,
14152  0 /*until_time_code (0/15)*/,
14153  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14154  },
14155  // -6:00 Canada C%sT
14156  {
14157  &kAtcAllZonePolicyCanada /*zone_policy*/,
14158  "C%T" /*format*/,
14159  -1440 /*offset_code (-21600/15)*/,
14160  0 /*offset_remainder (-21600%15)*/,
14161  0 /*delta_minutes*/,
14162  32767 /*until_year*/,
14163  1 /*until_month*/,
14164  1 /*until_day*/,
14165  0 /*until_time_code (0/15)*/,
14166  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14167  },
14168 
14169 };
14170 
14171 static const char kAtcZoneNameAmerica_Winnipeg[] = "America/Winnipeg";
14172 
14173 const AtcZoneInfo kAtcAllZoneAmerica_Winnipeg = {
14174  kAtcZoneNameAmerica_Winnipeg /*name*/,
14175  0x8c7dafc7 /*zone_id*/,
14176  &kAtcAllZoneContext /*zone_context*/,
14177  3 /*num_eras*/,
14178  kAtcZoneEraAmerica_Winnipeg /*eras*/,
14179  NULL /*target_info*/,
14180 };
14181 
14182 //---------------------------------------------------------------------------
14183 // Zone name: America/Yakutat
14184 // Zone Eras: 7
14185 //---------------------------------------------------------------------------
14186 
14187 static const AtcZoneEra kAtcZoneEraAmerica_Yakutat[] = {
14188  // 14:41:05 - LMT 1867 Oct 19 15:12:18
14189  {
14190  NULL /*zone_policy*/,
14191  "LMT" /*format*/,
14192  3524 /*offset_code (52865/15)*/,
14193  5 /*offset_remainder (52865%15)*/,
14194  0 /*delta_minutes*/,
14195  1867 /*until_year*/,
14196  10 /*until_month*/,
14197  19 /*until_day*/,
14198  3649 /*until_time_code (54738/15)*/,
14199  3 /*until_time_modifier (kAtcSuffixW + seconds=3)*/,
14200  },
14201  // -9:18:55 - LMT 1900 Aug 20 12:00
14202  {
14203  NULL /*zone_policy*/,
14204  "LMT" /*format*/,
14205  -2236 /*offset_code (-33535/15)*/,
14206  5 /*offset_remainder (-33535%15)*/,
14207  0 /*delta_minutes*/,
14208  1900 /*until_year*/,
14209  8 /*until_month*/,
14210  20 /*until_day*/,
14211  2880 /*until_time_code (43200/15)*/,
14212  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14213  },
14214  // -9:00 - YST 1942
14215  {
14216  NULL /*zone_policy*/,
14217  "YST" /*format*/,
14218  -2160 /*offset_code (-32400/15)*/,
14219  0 /*offset_remainder (-32400%15)*/,
14220  0 /*delta_minutes*/,
14221  1942 /*until_year*/,
14222  1 /*until_month*/,
14223  1 /*until_day*/,
14224  0 /*until_time_code (0/15)*/,
14225  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14226  },
14227  // -9:00 US Y%sT 1946
14228  {
14229  &kAtcAllZonePolicyUS /*zone_policy*/,
14230  "Y%T" /*format*/,
14231  -2160 /*offset_code (-32400/15)*/,
14232  0 /*offset_remainder (-32400%15)*/,
14233  0 /*delta_minutes*/,
14234  1946 /*until_year*/,
14235  1 /*until_month*/,
14236  1 /*until_day*/,
14237  0 /*until_time_code (0/15)*/,
14238  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14239  },
14240  // -9:00 - YST 1969
14241  {
14242  NULL /*zone_policy*/,
14243  "YST" /*format*/,
14244  -2160 /*offset_code (-32400/15)*/,
14245  0 /*offset_remainder (-32400%15)*/,
14246  0 /*delta_minutes*/,
14247  1969 /*until_year*/,
14248  1 /*until_month*/,
14249  1 /*until_day*/,
14250  0 /*until_time_code (0/15)*/,
14251  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14252  },
14253  // -9:00 US Y%sT 1983 Nov 30
14254  {
14255  &kAtcAllZonePolicyUS /*zone_policy*/,
14256  "Y%T" /*format*/,
14257  -2160 /*offset_code (-32400/15)*/,
14258  0 /*offset_remainder (-32400%15)*/,
14259  0 /*delta_minutes*/,
14260  1983 /*until_year*/,
14261  11 /*until_month*/,
14262  30 /*until_day*/,
14263  0 /*until_time_code (0/15)*/,
14264  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14265  },
14266  // -9:00 US AK%sT
14267  {
14268  &kAtcAllZonePolicyUS /*zone_policy*/,
14269  "AK%T" /*format*/,
14270  -2160 /*offset_code (-32400/15)*/,
14271  0 /*offset_remainder (-32400%15)*/,
14272  0 /*delta_minutes*/,
14273  32767 /*until_year*/,
14274  1 /*until_month*/,
14275  1 /*until_day*/,
14276  0 /*until_time_code (0/15)*/,
14277  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14278  },
14279 
14280 };
14281 
14282 static const char kAtcZoneNameAmerica_Yakutat[] = "America/Yakutat";
14283 
14284 const AtcZoneInfo kAtcAllZoneAmerica_Yakutat = {
14285  kAtcZoneNameAmerica_Yakutat /*name*/,
14286  0xd8ee31e9 /*zone_id*/,
14287  &kAtcAllZoneContext /*zone_context*/,
14288  7 /*num_eras*/,
14289  kAtcZoneEraAmerica_Yakutat /*eras*/,
14290  NULL /*target_info*/,
14291 };
14292 
14293 //---------------------------------------------------------------------------
14294 // Zone name: Antarctica/Casey
14295 // Zone Eras: 13
14296 //---------------------------------------------------------------------------
14297 
14298 static const AtcZoneEra kAtcZoneEraAntarctica_Casey[] = {
14299  // 0 - -00 1969
14300  {
14301  NULL /*zone_policy*/,
14302  "-00" /*format*/,
14303  0 /*offset_code (0/15)*/,
14304  0 /*offset_remainder (0%15)*/,
14305  0 /*delta_minutes*/,
14306  1969 /*until_year*/,
14307  1 /*until_month*/,
14308  1 /*until_day*/,
14309  0 /*until_time_code (0/15)*/,
14310  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14311  },
14312  // 8:00 - +08 2009 Oct 18 2:00
14313  {
14314  NULL /*zone_policy*/,
14315  "+08" /*format*/,
14316  1920 /*offset_code (28800/15)*/,
14317  0 /*offset_remainder (28800%15)*/,
14318  0 /*delta_minutes*/,
14319  2009 /*until_year*/,
14320  10 /*until_month*/,
14321  18 /*until_day*/,
14322  480 /*until_time_code (7200/15)*/,
14323  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14324  },
14325  // 11:00 - +11 2010 Mar 5 2:00
14326  {
14327  NULL /*zone_policy*/,
14328  "+11" /*format*/,
14329  2640 /*offset_code (39600/15)*/,
14330  0 /*offset_remainder (39600%15)*/,
14331  0 /*delta_minutes*/,
14332  2010 /*until_year*/,
14333  3 /*until_month*/,
14334  5 /*until_day*/,
14335  480 /*until_time_code (7200/15)*/,
14336  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14337  },
14338  // 8:00 - +08 2011 Oct 28 2:00
14339  {
14340  NULL /*zone_policy*/,
14341  "+08" /*format*/,
14342  1920 /*offset_code (28800/15)*/,
14343  0 /*offset_remainder (28800%15)*/,
14344  0 /*delta_minutes*/,
14345  2011 /*until_year*/,
14346  10 /*until_month*/,
14347  28 /*until_day*/,
14348  480 /*until_time_code (7200/15)*/,
14349  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14350  },
14351  // 11:00 - +11 2012 Feb 21 17:00u
14352  {
14353  NULL /*zone_policy*/,
14354  "+11" /*format*/,
14355  2640 /*offset_code (39600/15)*/,
14356  0 /*offset_remainder (39600%15)*/,
14357  0 /*delta_minutes*/,
14358  2012 /*until_year*/,
14359  2 /*until_month*/,
14360  21 /*until_day*/,
14361  4080 /*until_time_code (61200/15)*/,
14362  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
14363  },
14364  // 8:00 - +08 2016 Oct 22
14365  {
14366  NULL /*zone_policy*/,
14367  "+08" /*format*/,
14368  1920 /*offset_code (28800/15)*/,
14369  0 /*offset_remainder (28800%15)*/,
14370  0 /*delta_minutes*/,
14371  2016 /*until_year*/,
14372  10 /*until_month*/,
14373  22 /*until_day*/,
14374  0 /*until_time_code (0/15)*/,
14375  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14376  },
14377  // 11:00 - +11 2018 Mar 11 4:00
14378  {
14379  NULL /*zone_policy*/,
14380  "+11" /*format*/,
14381  2640 /*offset_code (39600/15)*/,
14382  0 /*offset_remainder (39600%15)*/,
14383  0 /*delta_minutes*/,
14384  2018 /*until_year*/,
14385  3 /*until_month*/,
14386  11 /*until_day*/,
14387  960 /*until_time_code (14400/15)*/,
14388  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14389  },
14390  // 8:00 - +08 2018 Oct 7 4:00
14391  {
14392  NULL /*zone_policy*/,
14393  "+08" /*format*/,
14394  1920 /*offset_code (28800/15)*/,
14395  0 /*offset_remainder (28800%15)*/,
14396  0 /*delta_minutes*/,
14397  2018 /*until_year*/,
14398  10 /*until_month*/,
14399  7 /*until_day*/,
14400  960 /*until_time_code (14400/15)*/,
14401  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14402  },
14403  // 11:00 - +11 2019 Mar 17 3:00
14404  {
14405  NULL /*zone_policy*/,
14406  "+11" /*format*/,
14407  2640 /*offset_code (39600/15)*/,
14408  0 /*offset_remainder (39600%15)*/,
14409  0 /*delta_minutes*/,
14410  2019 /*until_year*/,
14411  3 /*until_month*/,
14412  17 /*until_day*/,
14413  720 /*until_time_code (10800/15)*/,
14414  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14415  },
14416  // 8:00 - +08 2019 Oct 4 3:00
14417  {
14418  NULL /*zone_policy*/,
14419  "+08" /*format*/,
14420  1920 /*offset_code (28800/15)*/,
14421  0 /*offset_remainder (28800%15)*/,
14422  0 /*delta_minutes*/,
14423  2019 /*until_year*/,
14424  10 /*until_month*/,
14425  4 /*until_day*/,
14426  720 /*until_time_code (10800/15)*/,
14427  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14428  },
14429  // 11:00 - +11 2020 Mar 8 3:00
14430  {
14431  NULL /*zone_policy*/,
14432  "+11" /*format*/,
14433  2640 /*offset_code (39600/15)*/,
14434  0 /*offset_remainder (39600%15)*/,
14435  0 /*delta_minutes*/,
14436  2020 /*until_year*/,
14437  3 /*until_month*/,
14438  8 /*until_day*/,
14439  720 /*until_time_code (10800/15)*/,
14440  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14441  },
14442  // 8:00 - +08 2020 Oct 4 0:01
14443  {
14444  NULL /*zone_policy*/,
14445  "+08" /*format*/,
14446  1920 /*offset_code (28800/15)*/,
14447  0 /*offset_remainder (28800%15)*/,
14448  0 /*delta_minutes*/,
14449  2020 /*until_year*/,
14450  10 /*until_month*/,
14451  4 /*until_day*/,
14452  4 /*until_time_code (60/15)*/,
14453  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14454  },
14455  // 11:00 - +11
14456  {
14457  NULL /*zone_policy*/,
14458  "+11" /*format*/,
14459  2640 /*offset_code (39600/15)*/,
14460  0 /*offset_remainder (39600%15)*/,
14461  0 /*delta_minutes*/,
14462  32767 /*until_year*/,
14463  1 /*until_month*/,
14464  1 /*until_day*/,
14465  0 /*until_time_code (0/15)*/,
14466  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14467  },
14468 
14469 };
14470 
14471 static const char kAtcZoneNameAntarctica_Casey[] = "Antarctica/Casey";
14472 
14473 const AtcZoneInfo kAtcAllZoneAntarctica_Casey = {
14474  kAtcZoneNameAntarctica_Casey /*name*/,
14475  0xe2022583 /*zone_id*/,
14476  &kAtcAllZoneContext /*zone_context*/,
14477  13 /*num_eras*/,
14478  kAtcZoneEraAntarctica_Casey /*eras*/,
14479  NULL /*target_info*/,
14480 };
14481 
14482 //---------------------------------------------------------------------------
14483 // Zone name: Antarctica/Davis
14484 // Zone Eras: 8
14485 //---------------------------------------------------------------------------
14486 
14487 static const AtcZoneEra kAtcZoneEraAntarctica_Davis[] = {
14488  // 0 - -00 1957 Jan 13
14489  {
14490  NULL /*zone_policy*/,
14491  "-00" /*format*/,
14492  0 /*offset_code (0/15)*/,
14493  0 /*offset_remainder (0%15)*/,
14494  0 /*delta_minutes*/,
14495  1957 /*until_year*/,
14496  1 /*until_month*/,
14497  13 /*until_day*/,
14498  0 /*until_time_code (0/15)*/,
14499  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14500  },
14501  // 7:00 - +07 1964 Nov
14502  {
14503  NULL /*zone_policy*/,
14504  "+07" /*format*/,
14505  1680 /*offset_code (25200/15)*/,
14506  0 /*offset_remainder (25200%15)*/,
14507  0 /*delta_minutes*/,
14508  1964 /*until_year*/,
14509  11 /*until_month*/,
14510  1 /*until_day*/,
14511  0 /*until_time_code (0/15)*/,
14512  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14513  },
14514  // 0 - -00 1969 Feb
14515  {
14516  NULL /*zone_policy*/,
14517  "-00" /*format*/,
14518  0 /*offset_code (0/15)*/,
14519  0 /*offset_remainder (0%15)*/,
14520  0 /*delta_minutes*/,
14521  1969 /*until_year*/,
14522  2 /*until_month*/,
14523  1 /*until_day*/,
14524  0 /*until_time_code (0/15)*/,
14525  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14526  },
14527  // 7:00 - +07 2009 Oct 18 2:00
14528  {
14529  NULL /*zone_policy*/,
14530  "+07" /*format*/,
14531  1680 /*offset_code (25200/15)*/,
14532  0 /*offset_remainder (25200%15)*/,
14533  0 /*delta_minutes*/,
14534  2009 /*until_year*/,
14535  10 /*until_month*/,
14536  18 /*until_day*/,
14537  480 /*until_time_code (7200/15)*/,
14538  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14539  },
14540  // 5:00 - +05 2010 Mar 10 20:00u
14541  {
14542  NULL /*zone_policy*/,
14543  "+05" /*format*/,
14544  1200 /*offset_code (18000/15)*/,
14545  0 /*offset_remainder (18000%15)*/,
14546  0 /*delta_minutes*/,
14547  2010 /*until_year*/,
14548  3 /*until_month*/,
14549  10 /*until_day*/,
14550  4800 /*until_time_code (72000/15)*/,
14551  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
14552  },
14553  // 7:00 - +07 2011 Oct 28 2:00
14554  {
14555  NULL /*zone_policy*/,
14556  "+07" /*format*/,
14557  1680 /*offset_code (25200/15)*/,
14558  0 /*offset_remainder (25200%15)*/,
14559  0 /*delta_minutes*/,
14560  2011 /*until_year*/,
14561  10 /*until_month*/,
14562  28 /*until_day*/,
14563  480 /*until_time_code (7200/15)*/,
14564  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14565  },
14566  // 5:00 - +05 2012 Feb 21 20:00u
14567  {
14568  NULL /*zone_policy*/,
14569  "+05" /*format*/,
14570  1200 /*offset_code (18000/15)*/,
14571  0 /*offset_remainder (18000%15)*/,
14572  0 /*delta_minutes*/,
14573  2012 /*until_year*/,
14574  2 /*until_month*/,
14575  21 /*until_day*/,
14576  4800 /*until_time_code (72000/15)*/,
14577  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
14578  },
14579  // 7:00 - +07
14580  {
14581  NULL /*zone_policy*/,
14582  "+07" /*format*/,
14583  1680 /*offset_code (25200/15)*/,
14584  0 /*offset_remainder (25200%15)*/,
14585  0 /*delta_minutes*/,
14586  32767 /*until_year*/,
14587  1 /*until_month*/,
14588  1 /*until_day*/,
14589  0 /*until_time_code (0/15)*/,
14590  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14591  },
14592 
14593 };
14594 
14595 static const char kAtcZoneNameAntarctica_Davis[] = "Antarctica/Davis";
14596 
14597 const AtcZoneInfo kAtcAllZoneAntarctica_Davis = {
14598  kAtcZoneNameAntarctica_Davis /*name*/,
14599  0xe2144b45 /*zone_id*/,
14600  &kAtcAllZoneContext /*zone_context*/,
14601  8 /*num_eras*/,
14602  kAtcZoneEraAntarctica_Davis /*eras*/,
14603  NULL /*target_info*/,
14604 };
14605 
14606 //---------------------------------------------------------------------------
14607 // Zone name: Antarctica/Macquarie
14608 // Zone Eras: 9
14609 //---------------------------------------------------------------------------
14610 
14611 static const AtcZoneEra kAtcZoneEraAntarctica_Macquarie[] = {
14612  // 0 - -00 1899 Nov
14613  {
14614  NULL /*zone_policy*/,
14615  "-00" /*format*/,
14616  0 /*offset_code (0/15)*/,
14617  0 /*offset_remainder (0%15)*/,
14618  0 /*delta_minutes*/,
14619  1899 /*until_year*/,
14620  11 /*until_month*/,
14621  1 /*until_day*/,
14622  0 /*until_time_code (0/15)*/,
14623  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14624  },
14625  // 10:00 - AEST 1916 Oct 1 2:00
14626  {
14627  NULL /*zone_policy*/,
14628  "AEST" /*format*/,
14629  2400 /*offset_code (36000/15)*/,
14630  0 /*offset_remainder (36000%15)*/,
14631  0 /*delta_minutes*/,
14632  1916 /*until_year*/,
14633  10 /*until_month*/,
14634  1 /*until_day*/,
14635  480 /*until_time_code (7200/15)*/,
14636  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14637  },
14638  // 10:00 1:00 AEDT 1917 Feb
14639  {
14640  NULL /*zone_policy*/,
14641  "AEDT" /*format*/,
14642  2400 /*offset_code (36000/15)*/,
14643  0 /*offset_remainder (36000%15)*/,
14644  60 /*delta_minutes*/,
14645  1917 /*until_year*/,
14646  2 /*until_month*/,
14647  1 /*until_day*/,
14648  0 /*until_time_code (0/15)*/,
14649  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14650  },
14651  // 10:00 Aus AE%sT 1919 Apr 1 0:00s
14652  {
14653  &kAtcAllZonePolicyAus /*zone_policy*/,
14654  "AE%T" /*format*/,
14655  2400 /*offset_code (36000/15)*/,
14656  0 /*offset_remainder (36000%15)*/,
14657  0 /*delta_minutes*/,
14658  1919 /*until_year*/,
14659  4 /*until_month*/,
14660  1 /*until_day*/,
14661  0 /*until_time_code (0/15)*/,
14662  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
14663  },
14664  // 0 - -00 1948 Mar 25
14665  {
14666  NULL /*zone_policy*/,
14667  "-00" /*format*/,
14668  0 /*offset_code (0/15)*/,
14669  0 /*offset_remainder (0%15)*/,
14670  0 /*delta_minutes*/,
14671  1948 /*until_year*/,
14672  3 /*until_month*/,
14673  25 /*until_day*/,
14674  0 /*until_time_code (0/15)*/,
14675  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14676  },
14677  // 10:00 Aus AE%sT 1967
14678  {
14679  &kAtcAllZonePolicyAus /*zone_policy*/,
14680  "AE%T" /*format*/,
14681  2400 /*offset_code (36000/15)*/,
14682  0 /*offset_remainder (36000%15)*/,
14683  0 /*delta_minutes*/,
14684  1967 /*until_year*/,
14685  1 /*until_month*/,
14686  1 /*until_day*/,
14687  0 /*until_time_code (0/15)*/,
14688  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14689  },
14690  // 10:00 AT AE%sT 2010
14691  {
14692  &kAtcAllZonePolicyAT /*zone_policy*/,
14693  "AE%T" /*format*/,
14694  2400 /*offset_code (36000/15)*/,
14695  0 /*offset_remainder (36000%15)*/,
14696  0 /*delta_minutes*/,
14697  2010 /*until_year*/,
14698  1 /*until_month*/,
14699  1 /*until_day*/,
14700  0 /*until_time_code (0/15)*/,
14701  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14702  },
14703  // 10:00 1:00 AEDT 2011
14704  {
14705  NULL /*zone_policy*/,
14706  "AEDT" /*format*/,
14707  2400 /*offset_code (36000/15)*/,
14708  0 /*offset_remainder (36000%15)*/,
14709  60 /*delta_minutes*/,
14710  2011 /*until_year*/,
14711  1 /*until_month*/,
14712  1 /*until_day*/,
14713  0 /*until_time_code (0/15)*/,
14714  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14715  },
14716  // 10:00 AT AE%sT
14717  {
14718  &kAtcAllZonePolicyAT /*zone_policy*/,
14719  "AE%T" /*format*/,
14720  2400 /*offset_code (36000/15)*/,
14721  0 /*offset_remainder (36000%15)*/,
14722  0 /*delta_minutes*/,
14723  32767 /*until_year*/,
14724  1 /*until_month*/,
14725  1 /*until_day*/,
14726  0 /*until_time_code (0/15)*/,
14727  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14728  },
14729 
14730 };
14731 
14732 static const char kAtcZoneNameAntarctica_Macquarie[] = "Antarctica/Macquarie";
14733 
14734 const AtcZoneInfo kAtcAllZoneAntarctica_Macquarie = {
14735  kAtcZoneNameAntarctica_Macquarie /*name*/,
14736  0x92f47626 /*zone_id*/,
14737  &kAtcAllZoneContext /*zone_context*/,
14738  9 /*num_eras*/,
14739  kAtcZoneEraAntarctica_Macquarie /*eras*/,
14740  NULL /*target_info*/,
14741 };
14742 
14743 //---------------------------------------------------------------------------
14744 // Zone name: Antarctica/Mawson
14745 // Zone Eras: 3
14746 //---------------------------------------------------------------------------
14747 
14748 static const AtcZoneEra kAtcZoneEraAntarctica_Mawson[] = {
14749  // 0 - -00 1954 Feb 13
14750  {
14751  NULL /*zone_policy*/,
14752  "-00" /*format*/,
14753  0 /*offset_code (0/15)*/,
14754  0 /*offset_remainder (0%15)*/,
14755  0 /*delta_minutes*/,
14756  1954 /*until_year*/,
14757  2 /*until_month*/,
14758  13 /*until_day*/,
14759  0 /*until_time_code (0/15)*/,
14760  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14761  },
14762  // 6:00 - +06 2009 Oct 18 2:00
14763  {
14764  NULL /*zone_policy*/,
14765  "+06" /*format*/,
14766  1440 /*offset_code (21600/15)*/,
14767  0 /*offset_remainder (21600%15)*/,
14768  0 /*delta_minutes*/,
14769  2009 /*until_year*/,
14770  10 /*until_month*/,
14771  18 /*until_day*/,
14772  480 /*until_time_code (7200/15)*/,
14773  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14774  },
14775  // 5:00 - +05
14776  {
14777  NULL /*zone_policy*/,
14778  "+05" /*format*/,
14779  1200 /*offset_code (18000/15)*/,
14780  0 /*offset_remainder (18000%15)*/,
14781  0 /*delta_minutes*/,
14782  32767 /*until_year*/,
14783  1 /*until_month*/,
14784  1 /*until_day*/,
14785  0 /*until_time_code (0/15)*/,
14786  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14787  },
14788 
14789 };
14790 
14791 static const char kAtcZoneNameAntarctica_Mawson[] = "Antarctica/Mawson";
14792 
14793 const AtcZoneInfo kAtcAllZoneAntarctica_Mawson = {
14794  kAtcZoneNameAntarctica_Mawson /*name*/,
14795  0x399cd863 /*zone_id*/,
14796  &kAtcAllZoneContext /*zone_context*/,
14797  3 /*num_eras*/,
14798  kAtcZoneEraAntarctica_Mawson /*eras*/,
14799  NULL /*target_info*/,
14800 };
14801 
14802 //---------------------------------------------------------------------------
14803 // Zone name: Antarctica/Palmer
14804 // Zone Eras: 5
14805 //---------------------------------------------------------------------------
14806 
14807 static const AtcZoneEra kAtcZoneEraAntarctica_Palmer[] = {
14808  // 0 - -00 1965
14809  {
14810  NULL /*zone_policy*/,
14811  "-00" /*format*/,
14812  0 /*offset_code (0/15)*/,
14813  0 /*offset_remainder (0%15)*/,
14814  0 /*delta_minutes*/,
14815  1965 /*until_year*/,
14816  1 /*until_month*/,
14817  1 /*until_day*/,
14818  0 /*until_time_code (0/15)*/,
14819  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14820  },
14821  // -4:00 Arg -04/-03 1969 Oct 5
14822  {
14823  &kAtcAllZonePolicyArg /*zone_policy*/,
14824  "-04/-03" /*format*/,
14825  -960 /*offset_code (-14400/15)*/,
14826  0 /*offset_remainder (-14400%15)*/,
14827  0 /*delta_minutes*/,
14828  1969 /*until_year*/,
14829  10 /*until_month*/,
14830  5 /*until_day*/,
14831  0 /*until_time_code (0/15)*/,
14832  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14833  },
14834  // -3:00 Arg -03/-02 1982 May
14835  {
14836  &kAtcAllZonePolicyArg /*zone_policy*/,
14837  "-03/-02" /*format*/,
14838  -720 /*offset_code (-10800/15)*/,
14839  0 /*offset_remainder (-10800%15)*/,
14840  0 /*delta_minutes*/,
14841  1982 /*until_year*/,
14842  5 /*until_month*/,
14843  1 /*until_day*/,
14844  0 /*until_time_code (0/15)*/,
14845  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14846  },
14847  // -4:00 Chile -04/-03 2016 Dec 4
14848  {
14849  &kAtcAllZonePolicyChile /*zone_policy*/,
14850  "-04/-03" /*format*/,
14851  -960 /*offset_code (-14400/15)*/,
14852  0 /*offset_remainder (-14400%15)*/,
14853  0 /*delta_minutes*/,
14854  2016 /*until_year*/,
14855  12 /*until_month*/,
14856  4 /*until_day*/,
14857  0 /*until_time_code (0/15)*/,
14858  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14859  },
14860  // -3:00 - -03
14861  {
14862  NULL /*zone_policy*/,
14863  "-03" /*format*/,
14864  -720 /*offset_code (-10800/15)*/,
14865  0 /*offset_remainder (-10800%15)*/,
14866  0 /*delta_minutes*/,
14867  32767 /*until_year*/,
14868  1 /*until_month*/,
14869  1 /*until_day*/,
14870  0 /*until_time_code (0/15)*/,
14871  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14872  },
14873 
14874 };
14875 
14876 static const char kAtcZoneNameAntarctica_Palmer[] = "Antarctica/Palmer";
14877 
14878 const AtcZoneInfo kAtcAllZoneAntarctica_Palmer = {
14879  kAtcZoneNameAntarctica_Palmer /*name*/,
14880  0x40962f4f /*zone_id*/,
14881  &kAtcAllZoneContext /*zone_context*/,
14882  5 /*num_eras*/,
14883  kAtcZoneEraAntarctica_Palmer /*eras*/,
14884  NULL /*target_info*/,
14885 };
14886 
14887 //---------------------------------------------------------------------------
14888 // Zone name: Antarctica/Rothera
14889 // Zone Eras: 2
14890 //---------------------------------------------------------------------------
14891 
14892 static const AtcZoneEra kAtcZoneEraAntarctica_Rothera[] = {
14893  // 0 - -00 1976 Dec 1
14894  {
14895  NULL /*zone_policy*/,
14896  "-00" /*format*/,
14897  0 /*offset_code (0/15)*/,
14898  0 /*offset_remainder (0%15)*/,
14899  0 /*delta_minutes*/,
14900  1976 /*until_year*/,
14901  12 /*until_month*/,
14902  1 /*until_day*/,
14903  0 /*until_time_code (0/15)*/,
14904  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14905  },
14906  // -3:00 - -03
14907  {
14908  NULL /*zone_policy*/,
14909  "-03" /*format*/,
14910  -720 /*offset_code (-10800/15)*/,
14911  0 /*offset_remainder (-10800%15)*/,
14912  0 /*delta_minutes*/,
14913  32767 /*until_year*/,
14914  1 /*until_month*/,
14915  1 /*until_day*/,
14916  0 /*until_time_code (0/15)*/,
14917  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14918  },
14919 
14920 };
14921 
14922 static const char kAtcZoneNameAntarctica_Rothera[] = "Antarctica/Rothera";
14923 
14924 const AtcZoneInfo kAtcAllZoneAntarctica_Rothera = {
14925  kAtcZoneNameAntarctica_Rothera /*name*/,
14926  0x0e86d203 /*zone_id*/,
14927  &kAtcAllZoneContext /*zone_context*/,
14928  2 /*num_eras*/,
14929  kAtcZoneEraAntarctica_Rothera /*eras*/,
14930  NULL /*target_info*/,
14931 };
14932 
14933 //---------------------------------------------------------------------------
14934 // Zone name: Antarctica/Troll
14935 // Zone Eras: 2
14936 //---------------------------------------------------------------------------
14937 
14938 static const AtcZoneEra kAtcZoneEraAntarctica_Troll[] = {
14939  // 0 - -00 2005 Feb 12
14940  {
14941  NULL /*zone_policy*/,
14942  "-00" /*format*/,
14943  0 /*offset_code (0/15)*/,
14944  0 /*offset_remainder (0%15)*/,
14945  0 /*delta_minutes*/,
14946  2005 /*until_year*/,
14947  2 /*until_month*/,
14948  12 /*until_day*/,
14949  0 /*until_time_code (0/15)*/,
14950  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14951  },
14952  // 0:00 Troll %s
14953  {
14954  &kAtcAllZonePolicyTroll /*zone_policy*/,
14955  "%" /*format*/,
14956  0 /*offset_code (0/15)*/,
14957  0 /*offset_remainder (0%15)*/,
14958  0 /*delta_minutes*/,
14959  32767 /*until_year*/,
14960  1 /*until_month*/,
14961  1 /*until_day*/,
14962  0 /*until_time_code (0/15)*/,
14963  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14964  },
14965 
14966 };
14967 
14968 static const char kAtcZoneNameAntarctica_Troll[] = "Antarctica/Troll";
14969 
14970 const AtcZoneInfo kAtcAllZoneAntarctica_Troll = {
14971  kAtcZoneNameAntarctica_Troll /*name*/,
14972  0xe33f085b /*zone_id*/,
14973  &kAtcAllZoneContext /*zone_context*/,
14974  2 /*num_eras*/,
14975  kAtcZoneEraAntarctica_Troll /*eras*/,
14976  NULL /*target_info*/,
14977 };
14978 
14979 //---------------------------------------------------------------------------
14980 // Zone name: Asia/Almaty
14981 // Zone Eras: 6
14982 //---------------------------------------------------------------------------
14983 
14984 static const AtcZoneEra kAtcZoneEraAsia_Almaty[] = {
14985  // 5:07:48 - LMT 1924 May 2
14986  {
14987  NULL /*zone_policy*/,
14988  "LMT" /*format*/,
14989  1231 /*offset_code (18468/15)*/,
14990  3 /*offset_remainder (18468%15)*/,
14991  0 /*delta_minutes*/,
14992  1924 /*until_year*/,
14993  5 /*until_month*/,
14994  2 /*until_day*/,
14995  0 /*until_time_code (0/15)*/,
14996  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
14997  },
14998  // 5:00 - +05 1930 Jun 21
14999  {
15000  NULL /*zone_policy*/,
15001  "+05" /*format*/,
15002  1200 /*offset_code (18000/15)*/,
15003  0 /*offset_remainder (18000%15)*/,
15004  0 /*delta_minutes*/,
15005  1930 /*until_year*/,
15006  6 /*until_month*/,
15007  21 /*until_day*/,
15008  0 /*until_time_code (0/15)*/,
15009  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15010  },
15011  // 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
15012  {
15013  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15014  "+06/+07" /*format*/,
15015  1440 /*offset_code (21600/15)*/,
15016  0 /*offset_remainder (21600%15)*/,
15017  0 /*delta_minutes*/,
15018  1991 /*until_year*/,
15019  3 /*until_month*/,
15020  31 /*until_day*/,
15021  480 /*until_time_code (7200/15)*/,
15022  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15023  },
15024  // 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
15025  {
15026  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15027  "+05/+06" /*format*/,
15028  1200 /*offset_code (18000/15)*/,
15029  0 /*offset_remainder (18000%15)*/,
15030  0 /*delta_minutes*/,
15031  1992 /*until_year*/,
15032  1 /*until_month*/,
15033  19 /*until_day*/,
15034  480 /*until_time_code (7200/15)*/,
15035  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15036  },
15037  // 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
15038  {
15039  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15040  "+06/+07" /*format*/,
15041  1440 /*offset_code (21600/15)*/,
15042  0 /*offset_remainder (21600%15)*/,
15043  0 /*delta_minutes*/,
15044  2004 /*until_year*/,
15045  10 /*until_month*/,
15046  31 /*until_day*/,
15047  480 /*until_time_code (7200/15)*/,
15048  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15049  },
15050  // 6:00 - +06
15051  {
15052  NULL /*zone_policy*/,
15053  "+06" /*format*/,
15054  1440 /*offset_code (21600/15)*/,
15055  0 /*offset_remainder (21600%15)*/,
15056  0 /*delta_minutes*/,
15057  32767 /*until_year*/,
15058  1 /*until_month*/,
15059  1 /*until_day*/,
15060  0 /*until_time_code (0/15)*/,
15061  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15062  },
15063 
15064 };
15065 
15066 static const char kAtcZoneNameAsia_Almaty[] = "Asia/Almaty";
15067 
15068 const AtcZoneInfo kAtcAllZoneAsia_Almaty = {
15069  kAtcZoneNameAsia_Almaty /*name*/,
15070  0xa61f41fa /*zone_id*/,
15071  &kAtcAllZoneContext /*zone_context*/,
15072  6 /*num_eras*/,
15073  kAtcZoneEraAsia_Almaty /*eras*/,
15074  NULL /*target_info*/,
15075 };
15076 
15077 //---------------------------------------------------------------------------
15078 // Zone name: Asia/Amman
15079 // Zone Eras: 3
15080 //---------------------------------------------------------------------------
15081 
15082 static const AtcZoneEra kAtcZoneEraAsia_Amman[] = {
15083  // 2:23:44 - LMT 1931
15084  {
15085  NULL /*zone_policy*/,
15086  "LMT" /*format*/,
15087  574 /*offset_code (8624/15)*/,
15088  14 /*offset_remainder (8624%15)*/,
15089  0 /*delta_minutes*/,
15090  1931 /*until_year*/,
15091  1 /*until_month*/,
15092  1 /*until_day*/,
15093  0 /*until_time_code (0/15)*/,
15094  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15095  },
15096  // 2:00 Jordan EE%sT 2022 Oct 28 0:00s
15097  {
15098  &kAtcAllZonePolicyJordan /*zone_policy*/,
15099  "EE%T" /*format*/,
15100  480 /*offset_code (7200/15)*/,
15101  0 /*offset_remainder (7200%15)*/,
15102  0 /*delta_minutes*/,
15103  2022 /*until_year*/,
15104  10 /*until_month*/,
15105  28 /*until_day*/,
15106  0 /*until_time_code (0/15)*/,
15107  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15108  },
15109  // 3:00 - +03
15110  {
15111  NULL /*zone_policy*/,
15112  "+03" /*format*/,
15113  720 /*offset_code (10800/15)*/,
15114  0 /*offset_remainder (10800%15)*/,
15115  0 /*delta_minutes*/,
15116  32767 /*until_year*/,
15117  1 /*until_month*/,
15118  1 /*until_day*/,
15119  0 /*until_time_code (0/15)*/,
15120  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15121  },
15122 
15123 };
15124 
15125 static const char kAtcZoneNameAsia_Amman[] = "Asia/Amman";
15126 
15127 const AtcZoneInfo kAtcAllZoneAsia_Amman = {
15128  kAtcZoneNameAsia_Amman /*name*/,
15129  0x148d21bc /*zone_id*/,
15130  &kAtcAllZoneContext /*zone_context*/,
15131  3 /*num_eras*/,
15132  kAtcZoneEraAsia_Amman /*eras*/,
15133  NULL /*target_info*/,
15134 };
15135 
15136 //---------------------------------------------------------------------------
15137 // Zone name: Asia/Anadyr
15138 // Zone Eras: 8
15139 //---------------------------------------------------------------------------
15140 
15141 static const AtcZoneEra kAtcZoneEraAsia_Anadyr[] = {
15142  // 11:49:56 - LMT 1924 May 2
15143  {
15144  NULL /*zone_policy*/,
15145  "LMT" /*format*/,
15146  2839 /*offset_code (42596/15)*/,
15147  11 /*offset_remainder (42596%15)*/,
15148  0 /*delta_minutes*/,
15149  1924 /*until_year*/,
15150  5 /*until_month*/,
15151  2 /*until_day*/,
15152  0 /*until_time_code (0/15)*/,
15153  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15154  },
15155  // 12:00 - +12 1930 Jun 21
15156  {
15157  NULL /*zone_policy*/,
15158  "+12" /*format*/,
15159  2880 /*offset_code (43200/15)*/,
15160  0 /*offset_remainder (43200%15)*/,
15161  0 /*delta_minutes*/,
15162  1930 /*until_year*/,
15163  6 /*until_month*/,
15164  21 /*until_day*/,
15165  0 /*until_time_code (0/15)*/,
15166  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15167  },
15168  // 13:00 Russia +13/+14 1982 Apr 1 0:00s
15169  {
15170  &kAtcAllZonePolicyRussia /*zone_policy*/,
15171  "+13/+14" /*format*/,
15172  3120 /*offset_code (46800/15)*/,
15173  0 /*offset_remainder (46800%15)*/,
15174  0 /*delta_minutes*/,
15175  1982 /*until_year*/,
15176  4 /*until_month*/,
15177  1 /*until_day*/,
15178  0 /*until_time_code (0/15)*/,
15179  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15180  },
15181  // 12:00 Russia +12/+13 1991 Mar 31 2:00s
15182  {
15183  &kAtcAllZonePolicyRussia /*zone_policy*/,
15184  "+12/+13" /*format*/,
15185  2880 /*offset_code (43200/15)*/,
15186  0 /*offset_remainder (43200%15)*/,
15187  0 /*delta_minutes*/,
15188  1991 /*until_year*/,
15189  3 /*until_month*/,
15190  31 /*until_day*/,
15191  480 /*until_time_code (7200/15)*/,
15192  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15193  },
15194  // 11:00 Russia +11/+12 1992 Jan 19 2:00s
15195  {
15196  &kAtcAllZonePolicyRussia /*zone_policy*/,
15197  "+11/+12" /*format*/,
15198  2640 /*offset_code (39600/15)*/,
15199  0 /*offset_remainder (39600%15)*/,
15200  0 /*delta_minutes*/,
15201  1992 /*until_year*/,
15202  1 /*until_month*/,
15203  19 /*until_day*/,
15204  480 /*until_time_code (7200/15)*/,
15205  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15206  },
15207  // 12:00 Russia +12/+13 2010 Mar 28 2:00s
15208  {
15209  &kAtcAllZonePolicyRussia /*zone_policy*/,
15210  "+12/+13" /*format*/,
15211  2880 /*offset_code (43200/15)*/,
15212  0 /*offset_remainder (43200%15)*/,
15213  0 /*delta_minutes*/,
15214  2010 /*until_year*/,
15215  3 /*until_month*/,
15216  28 /*until_day*/,
15217  480 /*until_time_code (7200/15)*/,
15218  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15219  },
15220  // 11:00 Russia +11/+12 2011 Mar 27 2:00s
15221  {
15222  &kAtcAllZonePolicyRussia /*zone_policy*/,
15223  "+11/+12" /*format*/,
15224  2640 /*offset_code (39600/15)*/,
15225  0 /*offset_remainder (39600%15)*/,
15226  0 /*delta_minutes*/,
15227  2011 /*until_year*/,
15228  3 /*until_month*/,
15229  27 /*until_day*/,
15230  480 /*until_time_code (7200/15)*/,
15231  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15232  },
15233  // 12:00 - +12
15234  {
15235  NULL /*zone_policy*/,
15236  "+12" /*format*/,
15237  2880 /*offset_code (43200/15)*/,
15238  0 /*offset_remainder (43200%15)*/,
15239  0 /*delta_minutes*/,
15240  32767 /*until_year*/,
15241  1 /*until_month*/,
15242  1 /*until_day*/,
15243  0 /*until_time_code (0/15)*/,
15244  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15245  },
15246 
15247 };
15248 
15249 static const char kAtcZoneNameAsia_Anadyr[] = "Asia/Anadyr";
15250 
15251 const AtcZoneInfo kAtcAllZoneAsia_Anadyr = {
15252  kAtcZoneNameAsia_Anadyr /*name*/,
15253  0xa63cebd1 /*zone_id*/,
15254  &kAtcAllZoneContext /*zone_context*/,
15255  8 /*num_eras*/,
15256  kAtcZoneEraAsia_Anadyr /*eras*/,
15257  NULL /*target_info*/,
15258 };
15259 
15260 //---------------------------------------------------------------------------
15261 // Zone name: Asia/Aqtau
15262 // Zone Eras: 9
15263 //---------------------------------------------------------------------------
15264 
15265 static const AtcZoneEra kAtcZoneEraAsia_Aqtau[] = {
15266  // 3:21:04 - LMT 1924 May 2
15267  {
15268  NULL /*zone_policy*/,
15269  "LMT" /*format*/,
15270  804 /*offset_code (12064/15)*/,
15271  4 /*offset_remainder (12064%15)*/,
15272  0 /*delta_minutes*/,
15273  1924 /*until_year*/,
15274  5 /*until_month*/,
15275  2 /*until_day*/,
15276  0 /*until_time_code (0/15)*/,
15277  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15278  },
15279  // 4:00 - +04 1930 Jun 21
15280  {
15281  NULL /*zone_policy*/,
15282  "+04" /*format*/,
15283  960 /*offset_code (14400/15)*/,
15284  0 /*offset_remainder (14400%15)*/,
15285  0 /*delta_minutes*/,
15286  1930 /*until_year*/,
15287  6 /*until_month*/,
15288  21 /*until_day*/,
15289  0 /*until_time_code (0/15)*/,
15290  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15291  },
15292  // 5:00 - +05 1981 Oct 1
15293  {
15294  NULL /*zone_policy*/,
15295  "+05" /*format*/,
15296  1200 /*offset_code (18000/15)*/,
15297  0 /*offset_remainder (18000%15)*/,
15298  0 /*delta_minutes*/,
15299  1981 /*until_year*/,
15300  10 /*until_month*/,
15301  1 /*until_day*/,
15302  0 /*until_time_code (0/15)*/,
15303  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15304  },
15305  // 6:00 - +06 1982 Apr 1
15306  {
15307  NULL /*zone_policy*/,
15308  "+06" /*format*/,
15309  1440 /*offset_code (21600/15)*/,
15310  0 /*offset_remainder (21600%15)*/,
15311  0 /*delta_minutes*/,
15312  1982 /*until_year*/,
15313  4 /*until_month*/,
15314  1 /*until_day*/,
15315  0 /*until_time_code (0/15)*/,
15316  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15317  },
15318  // 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
15319  {
15320  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15321  "+05/+06" /*format*/,
15322  1200 /*offset_code (18000/15)*/,
15323  0 /*offset_remainder (18000%15)*/,
15324  0 /*delta_minutes*/,
15325  1991 /*until_year*/,
15326  3 /*until_month*/,
15327  31 /*until_day*/,
15328  480 /*until_time_code (7200/15)*/,
15329  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15330  },
15331  // 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
15332  {
15333  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15334  "+04/+05" /*format*/,
15335  960 /*offset_code (14400/15)*/,
15336  0 /*offset_remainder (14400%15)*/,
15337  0 /*delta_minutes*/,
15338  1992 /*until_year*/,
15339  1 /*until_month*/,
15340  19 /*until_day*/,
15341  480 /*until_time_code (7200/15)*/,
15342  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15343  },
15344  // 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
15345  {
15346  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15347  "+05/+06" /*format*/,
15348  1200 /*offset_code (18000/15)*/,
15349  0 /*offset_remainder (18000%15)*/,
15350  0 /*delta_minutes*/,
15351  1994 /*until_year*/,
15352  9 /*until_month*/,
15353  25 /*until_day*/,
15354  480 /*until_time_code (7200/15)*/,
15355  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15356  },
15357  // 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
15358  {
15359  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15360  "+04/+05" /*format*/,
15361  960 /*offset_code (14400/15)*/,
15362  0 /*offset_remainder (14400%15)*/,
15363  0 /*delta_minutes*/,
15364  2004 /*until_year*/,
15365  10 /*until_month*/,
15366  31 /*until_day*/,
15367  480 /*until_time_code (7200/15)*/,
15368  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15369  },
15370  // 5:00 - +05
15371  {
15372  NULL /*zone_policy*/,
15373  "+05" /*format*/,
15374  1200 /*offset_code (18000/15)*/,
15375  0 /*offset_remainder (18000%15)*/,
15376  0 /*delta_minutes*/,
15377  32767 /*until_year*/,
15378  1 /*until_month*/,
15379  1 /*until_day*/,
15380  0 /*until_time_code (0/15)*/,
15381  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15382  },
15383 
15384 };
15385 
15386 static const char kAtcZoneNameAsia_Aqtau[] = "Asia/Aqtau";
15387 
15388 const AtcZoneInfo kAtcAllZoneAsia_Aqtau = {
15389  kAtcZoneNameAsia_Aqtau /*name*/,
15390  0x148f710e /*zone_id*/,
15391  &kAtcAllZoneContext /*zone_context*/,
15392  9 /*num_eras*/,
15393  kAtcZoneEraAsia_Aqtau /*eras*/,
15394  NULL /*target_info*/,
15395 };
15396 
15397 //---------------------------------------------------------------------------
15398 // Zone name: Asia/Aqtobe
15399 // Zone Eras: 9
15400 //---------------------------------------------------------------------------
15401 
15402 static const AtcZoneEra kAtcZoneEraAsia_Aqtobe[] = {
15403  // 3:48:40 - LMT 1924 May 2
15404  {
15405  NULL /*zone_policy*/,
15406  "LMT" /*format*/,
15407  914 /*offset_code (13720/15)*/,
15408  10 /*offset_remainder (13720%15)*/,
15409  0 /*delta_minutes*/,
15410  1924 /*until_year*/,
15411  5 /*until_month*/,
15412  2 /*until_day*/,
15413  0 /*until_time_code (0/15)*/,
15414  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15415  },
15416  // 4:00 - +04 1930 Jun 21
15417  {
15418  NULL /*zone_policy*/,
15419  "+04" /*format*/,
15420  960 /*offset_code (14400/15)*/,
15421  0 /*offset_remainder (14400%15)*/,
15422  0 /*delta_minutes*/,
15423  1930 /*until_year*/,
15424  6 /*until_month*/,
15425  21 /*until_day*/,
15426  0 /*until_time_code (0/15)*/,
15427  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15428  },
15429  // 5:00 - +05 1981 Apr 1
15430  {
15431  NULL /*zone_policy*/,
15432  "+05" /*format*/,
15433  1200 /*offset_code (18000/15)*/,
15434  0 /*offset_remainder (18000%15)*/,
15435  0 /*delta_minutes*/,
15436  1981 /*until_year*/,
15437  4 /*until_month*/,
15438  1 /*until_day*/,
15439  0 /*until_time_code (0/15)*/,
15440  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15441  },
15442  // 5:00 1:00 +06 1981 Oct 1
15443  {
15444  NULL /*zone_policy*/,
15445  "+06" /*format*/,
15446  1200 /*offset_code (18000/15)*/,
15447  0 /*offset_remainder (18000%15)*/,
15448  60 /*delta_minutes*/,
15449  1981 /*until_year*/,
15450  10 /*until_month*/,
15451  1 /*until_day*/,
15452  0 /*until_time_code (0/15)*/,
15453  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15454  },
15455  // 6:00 - +06 1982 Apr 1
15456  {
15457  NULL /*zone_policy*/,
15458  "+06" /*format*/,
15459  1440 /*offset_code (21600/15)*/,
15460  0 /*offset_remainder (21600%15)*/,
15461  0 /*delta_minutes*/,
15462  1982 /*until_year*/,
15463  4 /*until_month*/,
15464  1 /*until_day*/,
15465  0 /*until_time_code (0/15)*/,
15466  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15467  },
15468  // 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
15469  {
15470  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15471  "+05/+06" /*format*/,
15472  1200 /*offset_code (18000/15)*/,
15473  0 /*offset_remainder (18000%15)*/,
15474  0 /*delta_minutes*/,
15475  1991 /*until_year*/,
15476  3 /*until_month*/,
15477  31 /*until_day*/,
15478  480 /*until_time_code (7200/15)*/,
15479  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15480  },
15481  // 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
15482  {
15483  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15484  "+04/+05" /*format*/,
15485  960 /*offset_code (14400/15)*/,
15486  0 /*offset_remainder (14400%15)*/,
15487  0 /*delta_minutes*/,
15488  1992 /*until_year*/,
15489  1 /*until_month*/,
15490  19 /*until_day*/,
15491  480 /*until_time_code (7200/15)*/,
15492  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15493  },
15494  // 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
15495  {
15496  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15497  "+05/+06" /*format*/,
15498  1200 /*offset_code (18000/15)*/,
15499  0 /*offset_remainder (18000%15)*/,
15500  0 /*delta_minutes*/,
15501  2004 /*until_year*/,
15502  10 /*until_month*/,
15503  31 /*until_day*/,
15504  480 /*until_time_code (7200/15)*/,
15505  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15506  },
15507  // 5:00 - +05
15508  {
15509  NULL /*zone_policy*/,
15510  "+05" /*format*/,
15511  1200 /*offset_code (18000/15)*/,
15512  0 /*offset_remainder (18000%15)*/,
15513  0 /*delta_minutes*/,
15514  32767 /*until_year*/,
15515  1 /*until_month*/,
15516  1 /*until_day*/,
15517  0 /*until_time_code (0/15)*/,
15518  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15519  },
15520 
15521 };
15522 
15523 static const char kAtcZoneNameAsia_Aqtobe[] = "Asia/Aqtobe";
15524 
15525 const AtcZoneInfo kAtcAllZoneAsia_Aqtobe = {
15526  kAtcZoneNameAsia_Aqtobe /*name*/,
15527  0xa67dcc4e /*zone_id*/,
15528  &kAtcAllZoneContext /*zone_context*/,
15529  9 /*num_eras*/,
15530  kAtcZoneEraAsia_Aqtobe /*eras*/,
15531  NULL /*target_info*/,
15532 };
15533 
15534 //---------------------------------------------------------------------------
15535 // Zone name: Asia/Ashgabat
15536 // Zone Eras: 5
15537 //---------------------------------------------------------------------------
15538 
15539 static const AtcZoneEra kAtcZoneEraAsia_Ashgabat[] = {
15540  // 3:53:32 - LMT 1924 May 2
15541  {
15542  NULL /*zone_policy*/,
15543  "LMT" /*format*/,
15544  934 /*offset_code (14012/15)*/,
15545  2 /*offset_remainder (14012%15)*/,
15546  0 /*delta_minutes*/,
15547  1924 /*until_year*/,
15548  5 /*until_month*/,
15549  2 /*until_day*/,
15550  0 /*until_time_code (0/15)*/,
15551  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15552  },
15553  // 4:00 - +04 1930 Jun 21
15554  {
15555  NULL /*zone_policy*/,
15556  "+04" /*format*/,
15557  960 /*offset_code (14400/15)*/,
15558  0 /*offset_remainder (14400%15)*/,
15559  0 /*delta_minutes*/,
15560  1930 /*until_year*/,
15561  6 /*until_month*/,
15562  21 /*until_day*/,
15563  0 /*until_time_code (0/15)*/,
15564  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15565  },
15566  // 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
15567  {
15568  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15569  "+05/+06" /*format*/,
15570  1200 /*offset_code (18000/15)*/,
15571  0 /*offset_remainder (18000%15)*/,
15572  0 /*delta_minutes*/,
15573  1991 /*until_year*/,
15574  3 /*until_month*/,
15575  31 /*until_day*/,
15576  480 /*until_time_code (7200/15)*/,
15577  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15578  },
15579  // 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00
15580  {
15581  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15582  "+04/+05" /*format*/,
15583  960 /*offset_code (14400/15)*/,
15584  0 /*offset_remainder (14400%15)*/,
15585  0 /*delta_minutes*/,
15586  1992 /*until_year*/,
15587  1 /*until_month*/,
15588  19 /*until_day*/,
15589  480 /*until_time_code (7200/15)*/,
15590  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15591  },
15592  // 5:00 - +05
15593  {
15594  NULL /*zone_policy*/,
15595  "+05" /*format*/,
15596  1200 /*offset_code (18000/15)*/,
15597  0 /*offset_remainder (18000%15)*/,
15598  0 /*delta_minutes*/,
15599  32767 /*until_year*/,
15600  1 /*until_month*/,
15601  1 /*until_day*/,
15602  0 /*until_time_code (0/15)*/,
15603  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15604  },
15605 
15606 };
15607 
15608 static const char kAtcZoneNameAsia_Ashgabat[] = "Asia/Ashgabat";
15609 
15610 const AtcZoneInfo kAtcAllZoneAsia_Ashgabat = {
15611  kAtcZoneNameAsia_Ashgabat /*name*/,
15612  0xba87598d /*zone_id*/,
15613  &kAtcAllZoneContext /*zone_context*/,
15614  5 /*num_eras*/,
15615  kAtcZoneEraAsia_Ashgabat /*eras*/,
15616  NULL /*target_info*/,
15617 };
15618 
15619 //---------------------------------------------------------------------------
15620 // Zone name: Asia/Atyrau
15621 // Zone Eras: 9
15622 //---------------------------------------------------------------------------
15623 
15624 static const AtcZoneEra kAtcZoneEraAsia_Atyrau[] = {
15625  // 3:27:44 - LMT 1924 May 2
15626  {
15627  NULL /*zone_policy*/,
15628  "LMT" /*format*/,
15629  830 /*offset_code (12464/15)*/,
15630  14 /*offset_remainder (12464%15)*/,
15631  0 /*delta_minutes*/,
15632  1924 /*until_year*/,
15633  5 /*until_month*/,
15634  2 /*until_day*/,
15635  0 /*until_time_code (0/15)*/,
15636  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15637  },
15638  // 3:00 - +03 1930 Jun 21
15639  {
15640  NULL /*zone_policy*/,
15641  "+03" /*format*/,
15642  720 /*offset_code (10800/15)*/,
15643  0 /*offset_remainder (10800%15)*/,
15644  0 /*delta_minutes*/,
15645  1930 /*until_year*/,
15646  6 /*until_month*/,
15647  21 /*until_day*/,
15648  0 /*until_time_code (0/15)*/,
15649  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15650  },
15651  // 5:00 - +05 1981 Oct 1
15652  {
15653  NULL /*zone_policy*/,
15654  "+05" /*format*/,
15655  1200 /*offset_code (18000/15)*/,
15656  0 /*offset_remainder (18000%15)*/,
15657  0 /*delta_minutes*/,
15658  1981 /*until_year*/,
15659  10 /*until_month*/,
15660  1 /*until_day*/,
15661  0 /*until_time_code (0/15)*/,
15662  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15663  },
15664  // 6:00 - +06 1982 Apr 1
15665  {
15666  NULL /*zone_policy*/,
15667  "+06" /*format*/,
15668  1440 /*offset_code (21600/15)*/,
15669  0 /*offset_remainder (21600%15)*/,
15670  0 /*delta_minutes*/,
15671  1982 /*until_year*/,
15672  4 /*until_month*/,
15673  1 /*until_day*/,
15674  0 /*until_time_code (0/15)*/,
15675  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15676  },
15677  // 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
15678  {
15679  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15680  "+05/+06" /*format*/,
15681  1200 /*offset_code (18000/15)*/,
15682  0 /*offset_remainder (18000%15)*/,
15683  0 /*delta_minutes*/,
15684  1991 /*until_year*/,
15685  3 /*until_month*/,
15686  31 /*until_day*/,
15687  480 /*until_time_code (7200/15)*/,
15688  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15689  },
15690  // 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
15691  {
15692  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15693  "+04/+05" /*format*/,
15694  960 /*offset_code (14400/15)*/,
15695  0 /*offset_remainder (14400%15)*/,
15696  0 /*delta_minutes*/,
15697  1992 /*until_year*/,
15698  1 /*until_month*/,
15699  19 /*until_day*/,
15700  480 /*until_time_code (7200/15)*/,
15701  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15702  },
15703  // 5:00 RussiaAsia +05/+06 1999 Mar 28 2:00s
15704  {
15705  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15706  "+05/+06" /*format*/,
15707  1200 /*offset_code (18000/15)*/,
15708  0 /*offset_remainder (18000%15)*/,
15709  0 /*delta_minutes*/,
15710  1999 /*until_year*/,
15711  3 /*until_month*/,
15712  28 /*until_day*/,
15713  480 /*until_time_code (7200/15)*/,
15714  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15715  },
15716  // 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
15717  {
15718  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15719  "+04/+05" /*format*/,
15720  960 /*offset_code (14400/15)*/,
15721  0 /*offset_remainder (14400%15)*/,
15722  0 /*delta_minutes*/,
15723  2004 /*until_year*/,
15724  10 /*until_month*/,
15725  31 /*until_day*/,
15726  480 /*until_time_code (7200/15)*/,
15727  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15728  },
15729  // 5:00 - +05
15730  {
15731  NULL /*zone_policy*/,
15732  "+05" /*format*/,
15733  1200 /*offset_code (18000/15)*/,
15734  0 /*offset_remainder (18000%15)*/,
15735  0 /*delta_minutes*/,
15736  32767 /*until_year*/,
15737  1 /*until_month*/,
15738  1 /*until_day*/,
15739  0 /*until_time_code (0/15)*/,
15740  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15741  },
15742 
15743 };
15744 
15745 static const char kAtcZoneNameAsia_Atyrau[] = "Asia/Atyrau";
15746 
15747 const AtcZoneInfo kAtcAllZoneAsia_Atyrau = {
15748  kAtcZoneNameAsia_Atyrau /*name*/,
15749  0xa6b6e068 /*zone_id*/,
15750  &kAtcAllZoneContext /*zone_context*/,
15751  9 /*num_eras*/,
15752  kAtcZoneEraAsia_Atyrau /*eras*/,
15753  NULL /*target_info*/,
15754 };
15755 
15756 //---------------------------------------------------------------------------
15757 // Zone name: Asia/Baghdad
15758 // Zone Eras: 4
15759 //---------------------------------------------------------------------------
15760 
15761 static const AtcZoneEra kAtcZoneEraAsia_Baghdad[] = {
15762  // 2:57:40 - LMT 1890
15763  {
15764  NULL /*zone_policy*/,
15765  "LMT" /*format*/,
15766  710 /*offset_code (10660/15)*/,
15767  10 /*offset_remainder (10660%15)*/,
15768  0 /*delta_minutes*/,
15769  1890 /*until_year*/,
15770  1 /*until_month*/,
15771  1 /*until_day*/,
15772  0 /*until_time_code (0/15)*/,
15773  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15774  },
15775  // 2:57:36 - BMT 1918
15776  {
15777  NULL /*zone_policy*/,
15778  "BMT" /*format*/,
15779  710 /*offset_code (10656/15)*/,
15780  6 /*offset_remainder (10656%15)*/,
15781  0 /*delta_minutes*/,
15782  1918 /*until_year*/,
15783  1 /*until_month*/,
15784  1 /*until_day*/,
15785  0 /*until_time_code (0/15)*/,
15786  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15787  },
15788  // 3:00 - +03 1982 May
15789  {
15790  NULL /*zone_policy*/,
15791  "+03" /*format*/,
15792  720 /*offset_code (10800/15)*/,
15793  0 /*offset_remainder (10800%15)*/,
15794  0 /*delta_minutes*/,
15795  1982 /*until_year*/,
15796  5 /*until_month*/,
15797  1 /*until_day*/,
15798  0 /*until_time_code (0/15)*/,
15799  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15800  },
15801  // 3:00 Iraq +03/+04
15802  {
15803  &kAtcAllZonePolicyIraq /*zone_policy*/,
15804  "+03/+04" /*format*/,
15805  720 /*offset_code (10800/15)*/,
15806  0 /*offset_remainder (10800%15)*/,
15807  0 /*delta_minutes*/,
15808  32767 /*until_year*/,
15809  1 /*until_month*/,
15810  1 /*until_day*/,
15811  0 /*until_time_code (0/15)*/,
15812  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15813  },
15814 
15815 };
15816 
15817 static const char kAtcZoneNameAsia_Baghdad[] = "Asia/Baghdad";
15818 
15819 const AtcZoneInfo kAtcAllZoneAsia_Baghdad = {
15820  kAtcZoneNameAsia_Baghdad /*name*/,
15821  0x9ceffbed /*zone_id*/,
15822  &kAtcAllZoneContext /*zone_context*/,
15823  4 /*num_eras*/,
15824  kAtcZoneEraAsia_Baghdad /*eras*/,
15825  NULL /*target_info*/,
15826 };
15827 
15828 //---------------------------------------------------------------------------
15829 // Zone name: Asia/Baku
15830 // Zone Eras: 7
15831 //---------------------------------------------------------------------------
15832 
15833 static const AtcZoneEra kAtcZoneEraAsia_Baku[] = {
15834  // 3:19:24 - LMT 1924 May 2
15835  {
15836  NULL /*zone_policy*/,
15837  "LMT" /*format*/,
15838  797 /*offset_code (11964/15)*/,
15839  9 /*offset_remainder (11964%15)*/,
15840  0 /*delta_minutes*/,
15841  1924 /*until_year*/,
15842  5 /*until_month*/,
15843  2 /*until_day*/,
15844  0 /*until_time_code (0/15)*/,
15845  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15846  },
15847  // 3:00 - +03 1957 Mar
15848  {
15849  NULL /*zone_policy*/,
15850  "+03" /*format*/,
15851  720 /*offset_code (10800/15)*/,
15852  0 /*offset_remainder (10800%15)*/,
15853  0 /*delta_minutes*/,
15854  1957 /*until_year*/,
15855  3 /*until_month*/,
15856  1 /*until_day*/,
15857  0 /*until_time_code (0/15)*/,
15858  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15859  },
15860  // 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
15861  {
15862  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15863  "+04/+05" /*format*/,
15864  960 /*offset_code (14400/15)*/,
15865  0 /*offset_remainder (14400%15)*/,
15866  0 /*delta_minutes*/,
15867  1991 /*until_year*/,
15868  3 /*until_month*/,
15869  31 /*until_day*/,
15870  480 /*until_time_code (7200/15)*/,
15871  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15872  },
15873  // 3:00 RussiaAsia +03/+04 1992 Sep lastSun 2:00s
15874  {
15875  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
15876  "+03/+04" /*format*/,
15877  720 /*offset_code (10800/15)*/,
15878  0 /*offset_remainder (10800%15)*/,
15879  0 /*delta_minutes*/,
15880  1992 /*until_year*/,
15881  9 /*until_month*/,
15882  27 /*until_day*/,
15883  480 /*until_time_code (7200/15)*/,
15884  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
15885  },
15886  // 4:00 - +04 1996
15887  {
15888  NULL /*zone_policy*/,
15889  "+04" /*format*/,
15890  960 /*offset_code (14400/15)*/,
15891  0 /*offset_remainder (14400%15)*/,
15892  0 /*delta_minutes*/,
15893  1996 /*until_year*/,
15894  1 /*until_month*/,
15895  1 /*until_day*/,
15896  0 /*until_time_code (0/15)*/,
15897  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15898  },
15899  // 4:00 EUAsia +04/+05 1997
15900  {
15901  &kAtcAllZonePolicyEUAsia /*zone_policy*/,
15902  "+04/+05" /*format*/,
15903  960 /*offset_code (14400/15)*/,
15904  0 /*offset_remainder (14400%15)*/,
15905  0 /*delta_minutes*/,
15906  1997 /*until_year*/,
15907  1 /*until_month*/,
15908  1 /*until_day*/,
15909  0 /*until_time_code (0/15)*/,
15910  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15911  },
15912  // 4:00 Azer +04/+05
15913  {
15914  &kAtcAllZonePolicyAzer /*zone_policy*/,
15915  "+04/+05" /*format*/,
15916  960 /*offset_code (14400/15)*/,
15917  0 /*offset_remainder (14400%15)*/,
15918  0 /*delta_minutes*/,
15919  32767 /*until_year*/,
15920  1 /*until_month*/,
15921  1 /*until_day*/,
15922  0 /*until_time_code (0/15)*/,
15923  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15924  },
15925 
15926 };
15927 
15928 static const char kAtcZoneNameAsia_Baku[] = "Asia/Baku";
15929 
15930 const AtcZoneInfo kAtcAllZoneAsia_Baku = {
15931  kAtcZoneNameAsia_Baku /*name*/,
15932  0x1fa788b5 /*zone_id*/,
15933  &kAtcAllZoneContext /*zone_context*/,
15934  7 /*num_eras*/,
15935  kAtcZoneEraAsia_Baku /*eras*/,
15936  NULL /*target_info*/,
15937 };
15938 
15939 //---------------------------------------------------------------------------
15940 // Zone name: Asia/Bangkok
15941 // Zone Eras: 3
15942 //---------------------------------------------------------------------------
15943 
15944 static const AtcZoneEra kAtcZoneEraAsia_Bangkok[] = {
15945  // 6:42:04 - LMT 1880
15946  {
15947  NULL /*zone_policy*/,
15948  "LMT" /*format*/,
15949  1608 /*offset_code (24124/15)*/,
15950  4 /*offset_remainder (24124%15)*/,
15951  0 /*delta_minutes*/,
15952  1880 /*until_year*/,
15953  1 /*until_month*/,
15954  1 /*until_day*/,
15955  0 /*until_time_code (0/15)*/,
15956  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15957  },
15958  // 6:42:04 - BMT 1920 Apr
15959  {
15960  NULL /*zone_policy*/,
15961  "BMT" /*format*/,
15962  1608 /*offset_code (24124/15)*/,
15963  4 /*offset_remainder (24124%15)*/,
15964  0 /*delta_minutes*/,
15965  1920 /*until_year*/,
15966  4 /*until_month*/,
15967  1 /*until_day*/,
15968  0 /*until_time_code (0/15)*/,
15969  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15970  },
15971  // 7:00 - +07
15972  {
15973  NULL /*zone_policy*/,
15974  "+07" /*format*/,
15975  1680 /*offset_code (25200/15)*/,
15976  0 /*offset_remainder (25200%15)*/,
15977  0 /*delta_minutes*/,
15978  32767 /*until_year*/,
15979  1 /*until_month*/,
15980  1 /*until_day*/,
15981  0 /*until_time_code (0/15)*/,
15982  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
15983  },
15984 
15985 };
15986 
15987 static const char kAtcZoneNameAsia_Bangkok[] = "Asia/Bangkok";
15988 
15989 const AtcZoneInfo kAtcAllZoneAsia_Bangkok = {
15990  kAtcZoneNameAsia_Bangkok /*name*/,
15991  0x9d6e3aaf /*zone_id*/,
15992  &kAtcAllZoneContext /*zone_context*/,
15993  3 /*num_eras*/,
15994  kAtcZoneEraAsia_Bangkok /*eras*/,
15995  NULL /*target_info*/,
15996 };
15997 
15998 //---------------------------------------------------------------------------
15999 // Zone name: Asia/Barnaul
16000 // Zone Eras: 9
16001 //---------------------------------------------------------------------------
16002 
16003 static const AtcZoneEra kAtcZoneEraAsia_Barnaul[] = {
16004  // 5:35:00 - LMT 1919 Dec 10
16005  {
16006  NULL /*zone_policy*/,
16007  "LMT" /*format*/,
16008  1340 /*offset_code (20100/15)*/,
16009  0 /*offset_remainder (20100%15)*/,
16010  0 /*delta_minutes*/,
16011  1919 /*until_year*/,
16012  12 /*until_month*/,
16013  10 /*until_day*/,
16014  0 /*until_time_code (0/15)*/,
16015  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16016  },
16017  // 6:00 - +06 1930 Jun 21
16018  {
16019  NULL /*zone_policy*/,
16020  "+06" /*format*/,
16021  1440 /*offset_code (21600/15)*/,
16022  0 /*offset_remainder (21600%15)*/,
16023  0 /*delta_minutes*/,
16024  1930 /*until_year*/,
16025  6 /*until_month*/,
16026  21 /*until_day*/,
16027  0 /*until_time_code (0/15)*/,
16028  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16029  },
16030  // 7:00 Russia +07/+08 1991 Mar 31 2:00s
16031  {
16032  &kAtcAllZonePolicyRussia /*zone_policy*/,
16033  "+07/+08" /*format*/,
16034  1680 /*offset_code (25200/15)*/,
16035  0 /*offset_remainder (25200%15)*/,
16036  0 /*delta_minutes*/,
16037  1991 /*until_year*/,
16038  3 /*until_month*/,
16039  31 /*until_day*/,
16040  480 /*until_time_code (7200/15)*/,
16041  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16042  },
16043  // 6:00 Russia +06/+07 1992 Jan 19 2:00s
16044  {
16045  &kAtcAllZonePolicyRussia /*zone_policy*/,
16046  "+06/+07" /*format*/,
16047  1440 /*offset_code (21600/15)*/,
16048  0 /*offset_remainder (21600%15)*/,
16049  0 /*delta_minutes*/,
16050  1992 /*until_year*/,
16051  1 /*until_month*/,
16052  19 /*until_day*/,
16053  480 /*until_time_code (7200/15)*/,
16054  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16055  },
16056  // 7:00 Russia +07/+08 1995 May 28
16057  {
16058  &kAtcAllZonePolicyRussia /*zone_policy*/,
16059  "+07/+08" /*format*/,
16060  1680 /*offset_code (25200/15)*/,
16061  0 /*offset_remainder (25200%15)*/,
16062  0 /*delta_minutes*/,
16063  1995 /*until_year*/,
16064  5 /*until_month*/,
16065  28 /*until_day*/,
16066  0 /*until_time_code (0/15)*/,
16067  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16068  },
16069  // 6:00 Russia +06/+07 2011 Mar 27 2:00s
16070  {
16071  &kAtcAllZonePolicyRussia /*zone_policy*/,
16072  "+06/+07" /*format*/,
16073  1440 /*offset_code (21600/15)*/,
16074  0 /*offset_remainder (21600%15)*/,
16075  0 /*delta_minutes*/,
16076  2011 /*until_year*/,
16077  3 /*until_month*/,
16078  27 /*until_day*/,
16079  480 /*until_time_code (7200/15)*/,
16080  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16081  },
16082  // 7:00 - +07 2014 Oct 26 2:00s
16083  {
16084  NULL /*zone_policy*/,
16085  "+07" /*format*/,
16086  1680 /*offset_code (25200/15)*/,
16087  0 /*offset_remainder (25200%15)*/,
16088  0 /*delta_minutes*/,
16089  2014 /*until_year*/,
16090  10 /*until_month*/,
16091  26 /*until_day*/,
16092  480 /*until_time_code (7200/15)*/,
16093  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16094  },
16095  // 6:00 - +06 2016 Mar 27 2:00s
16096  {
16097  NULL /*zone_policy*/,
16098  "+06" /*format*/,
16099  1440 /*offset_code (21600/15)*/,
16100  0 /*offset_remainder (21600%15)*/,
16101  0 /*delta_minutes*/,
16102  2016 /*until_year*/,
16103  3 /*until_month*/,
16104  27 /*until_day*/,
16105  480 /*until_time_code (7200/15)*/,
16106  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16107  },
16108  // 7:00 - +07
16109  {
16110  NULL /*zone_policy*/,
16111  "+07" /*format*/,
16112  1680 /*offset_code (25200/15)*/,
16113  0 /*offset_remainder (25200%15)*/,
16114  0 /*delta_minutes*/,
16115  32767 /*until_year*/,
16116  1 /*until_month*/,
16117  1 /*until_day*/,
16118  0 /*until_time_code (0/15)*/,
16119  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16120  },
16121 
16122 };
16123 
16124 static const char kAtcZoneNameAsia_Barnaul[] = "Asia/Barnaul";
16125 
16126 const AtcZoneInfo kAtcAllZoneAsia_Barnaul = {
16127  kAtcZoneNameAsia_Barnaul /*name*/,
16128  0x9dba4997 /*zone_id*/,
16129  &kAtcAllZoneContext /*zone_context*/,
16130  9 /*num_eras*/,
16131  kAtcZoneEraAsia_Barnaul /*eras*/,
16132  NULL /*target_info*/,
16133 };
16134 
16135 //---------------------------------------------------------------------------
16136 // Zone name: Asia/Beirut
16137 // Zone Eras: 2
16138 //---------------------------------------------------------------------------
16139 
16140 static const AtcZoneEra kAtcZoneEraAsia_Beirut[] = {
16141  // 2:22:00 - LMT 1880
16142  {
16143  NULL /*zone_policy*/,
16144  "LMT" /*format*/,
16145  568 /*offset_code (8520/15)*/,
16146  0 /*offset_remainder (8520%15)*/,
16147  0 /*delta_minutes*/,
16148  1880 /*until_year*/,
16149  1 /*until_month*/,
16150  1 /*until_day*/,
16151  0 /*until_time_code (0/15)*/,
16152  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16153  },
16154  // 2:00 Lebanon EE%sT
16155  {
16156  &kAtcAllZonePolicyLebanon /*zone_policy*/,
16157  "EE%T" /*format*/,
16158  480 /*offset_code (7200/15)*/,
16159  0 /*offset_remainder (7200%15)*/,
16160  0 /*delta_minutes*/,
16161  32767 /*until_year*/,
16162  1 /*until_month*/,
16163  1 /*until_day*/,
16164  0 /*until_time_code (0/15)*/,
16165  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16166  },
16167 
16168 };
16169 
16170 static const char kAtcZoneNameAsia_Beirut[] = "Asia/Beirut";
16171 
16172 const AtcZoneInfo kAtcAllZoneAsia_Beirut = {
16173  kAtcZoneNameAsia_Beirut /*name*/,
16174  0xa7f3d5fd /*zone_id*/,
16175  &kAtcAllZoneContext /*zone_context*/,
16176  2 /*num_eras*/,
16177  kAtcZoneEraAsia_Beirut /*eras*/,
16178  NULL /*target_info*/,
16179 };
16180 
16181 //---------------------------------------------------------------------------
16182 // Zone name: Asia/Bishkek
16183 // Zone Eras: 6
16184 //---------------------------------------------------------------------------
16185 
16186 static const AtcZoneEra kAtcZoneEraAsia_Bishkek[] = {
16187  // 4:58:24 - LMT 1924 May 2
16188  {
16189  NULL /*zone_policy*/,
16190  "LMT" /*format*/,
16191  1193 /*offset_code (17904/15)*/,
16192  9 /*offset_remainder (17904%15)*/,
16193  0 /*delta_minutes*/,
16194  1924 /*until_year*/,
16195  5 /*until_month*/,
16196  2 /*until_day*/,
16197  0 /*until_time_code (0/15)*/,
16198  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16199  },
16200  // 5:00 - +05 1930 Jun 21
16201  {
16202  NULL /*zone_policy*/,
16203  "+05" /*format*/,
16204  1200 /*offset_code (18000/15)*/,
16205  0 /*offset_remainder (18000%15)*/,
16206  0 /*delta_minutes*/,
16207  1930 /*until_year*/,
16208  6 /*until_month*/,
16209  21 /*until_day*/,
16210  0 /*until_time_code (0/15)*/,
16211  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16212  },
16213  // 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
16214  {
16215  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
16216  "+06/+07" /*format*/,
16217  1440 /*offset_code (21600/15)*/,
16218  0 /*offset_remainder (21600%15)*/,
16219  0 /*delta_minutes*/,
16220  1991 /*until_year*/,
16221  3 /*until_month*/,
16222  31 /*until_day*/,
16223  480 /*until_time_code (7200/15)*/,
16224  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16225  },
16226  // 5:00 RussiaAsia +05/+06 1991 Aug 31 2:00
16227  {
16228  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
16229  "+05/+06" /*format*/,
16230  1200 /*offset_code (18000/15)*/,
16231  0 /*offset_remainder (18000%15)*/,
16232  0 /*delta_minutes*/,
16233  1991 /*until_year*/,
16234  8 /*until_month*/,
16235  31 /*until_day*/,
16236  480 /*until_time_code (7200/15)*/,
16237  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16238  },
16239  // 5:00 Kyrgyz +05/+06 2005 Aug 12
16240  {
16241  &kAtcAllZonePolicyKyrgyz /*zone_policy*/,
16242  "+05/+06" /*format*/,
16243  1200 /*offset_code (18000/15)*/,
16244  0 /*offset_remainder (18000%15)*/,
16245  0 /*delta_minutes*/,
16246  2005 /*until_year*/,
16247  8 /*until_month*/,
16248  12 /*until_day*/,
16249  0 /*until_time_code (0/15)*/,
16250  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16251  },
16252  // 6:00 - +06
16253  {
16254  NULL /*zone_policy*/,
16255  "+06" /*format*/,
16256  1440 /*offset_code (21600/15)*/,
16257  0 /*offset_remainder (21600%15)*/,
16258  0 /*delta_minutes*/,
16259  32767 /*until_year*/,
16260  1 /*until_month*/,
16261  1 /*until_day*/,
16262  0 /*until_time_code (0/15)*/,
16263  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16264  },
16265 
16266 };
16267 
16268 static const char kAtcZoneNameAsia_Bishkek[] = "Asia/Bishkek";
16269 
16270 const AtcZoneInfo kAtcAllZoneAsia_Bishkek = {
16271  kAtcZoneNameAsia_Bishkek /*name*/,
16272  0xb0728553 /*zone_id*/,
16273  &kAtcAllZoneContext /*zone_context*/,
16274  6 /*num_eras*/,
16275  kAtcZoneEraAsia_Bishkek /*eras*/,
16276  NULL /*target_info*/,
16277 };
16278 
16279 //---------------------------------------------------------------------------
16280 // Zone name: Asia/Chita
16281 // Zone Eras: 8
16282 //---------------------------------------------------------------------------
16283 
16284 static const AtcZoneEra kAtcZoneEraAsia_Chita[] = {
16285  // 7:33:52 - LMT 1919 Dec 15
16286  {
16287  NULL /*zone_policy*/,
16288  "LMT" /*format*/,
16289  1815 /*offset_code (27232/15)*/,
16290  7 /*offset_remainder (27232%15)*/,
16291  0 /*delta_minutes*/,
16292  1919 /*until_year*/,
16293  12 /*until_month*/,
16294  15 /*until_day*/,
16295  0 /*until_time_code (0/15)*/,
16296  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16297  },
16298  // 8:00 - +08 1930 Jun 21
16299  {
16300  NULL /*zone_policy*/,
16301  "+08" /*format*/,
16302  1920 /*offset_code (28800/15)*/,
16303  0 /*offset_remainder (28800%15)*/,
16304  0 /*delta_minutes*/,
16305  1930 /*until_year*/,
16306  6 /*until_month*/,
16307  21 /*until_day*/,
16308  0 /*until_time_code (0/15)*/,
16309  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16310  },
16311  // 9:00 Russia +09/+10 1991 Mar 31 2:00s
16312  {
16313  &kAtcAllZonePolicyRussia /*zone_policy*/,
16314  "+09/+10" /*format*/,
16315  2160 /*offset_code (32400/15)*/,
16316  0 /*offset_remainder (32400%15)*/,
16317  0 /*delta_minutes*/,
16318  1991 /*until_year*/,
16319  3 /*until_month*/,
16320  31 /*until_day*/,
16321  480 /*until_time_code (7200/15)*/,
16322  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16323  },
16324  // 8:00 Russia +08/+09 1992 Jan 19 2:00s
16325  {
16326  &kAtcAllZonePolicyRussia /*zone_policy*/,
16327  "+08/+09" /*format*/,
16328  1920 /*offset_code (28800/15)*/,
16329  0 /*offset_remainder (28800%15)*/,
16330  0 /*delta_minutes*/,
16331  1992 /*until_year*/,
16332  1 /*until_month*/,
16333  19 /*until_day*/,
16334  480 /*until_time_code (7200/15)*/,
16335  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16336  },
16337  // 9:00 Russia +09/+10 2011 Mar 27 2:00s
16338  {
16339  &kAtcAllZonePolicyRussia /*zone_policy*/,
16340  "+09/+10" /*format*/,
16341  2160 /*offset_code (32400/15)*/,
16342  0 /*offset_remainder (32400%15)*/,
16343  0 /*delta_minutes*/,
16344  2011 /*until_year*/,
16345  3 /*until_month*/,
16346  27 /*until_day*/,
16347  480 /*until_time_code (7200/15)*/,
16348  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16349  },
16350  // 10:00 - +10 2014 Oct 26 2:00s
16351  {
16352  NULL /*zone_policy*/,
16353  "+10" /*format*/,
16354  2400 /*offset_code (36000/15)*/,
16355  0 /*offset_remainder (36000%15)*/,
16356  0 /*delta_minutes*/,
16357  2014 /*until_year*/,
16358  10 /*until_month*/,
16359  26 /*until_day*/,
16360  480 /*until_time_code (7200/15)*/,
16361  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16362  },
16363  // 8:00 - +08 2016 Mar 27 2:00
16364  {
16365  NULL /*zone_policy*/,
16366  "+08" /*format*/,
16367  1920 /*offset_code (28800/15)*/,
16368  0 /*offset_remainder (28800%15)*/,
16369  0 /*delta_minutes*/,
16370  2016 /*until_year*/,
16371  3 /*until_month*/,
16372  27 /*until_day*/,
16373  480 /*until_time_code (7200/15)*/,
16374  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16375  },
16376  // 9:00 - +09
16377  {
16378  NULL /*zone_policy*/,
16379  "+09" /*format*/,
16380  2160 /*offset_code (32400/15)*/,
16381  0 /*offset_remainder (32400%15)*/,
16382  0 /*delta_minutes*/,
16383  32767 /*until_year*/,
16384  1 /*until_month*/,
16385  1 /*until_day*/,
16386  0 /*until_time_code (0/15)*/,
16387  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16388  },
16389 
16390 };
16391 
16392 static const char kAtcZoneNameAsia_Chita[] = "Asia/Chita";
16393 
16394 const AtcZoneInfo kAtcAllZoneAsia_Chita = {
16395  kAtcZoneNameAsia_Chita /*name*/,
16396  0x14ae863b /*zone_id*/,
16397  &kAtcAllZoneContext /*zone_context*/,
16398  8 /*num_eras*/,
16399  kAtcZoneEraAsia_Chita /*eras*/,
16400  NULL /*target_info*/,
16401 };
16402 
16403 //---------------------------------------------------------------------------
16404 // Zone name: Asia/Choibalsan
16405 // Zone Eras: 5
16406 //---------------------------------------------------------------------------
16407 
16408 static const AtcZoneEra kAtcZoneEraAsia_Choibalsan[] = {
16409  // 7:38:00 - LMT 1905 Aug
16410  {
16411  NULL /*zone_policy*/,
16412  "LMT" /*format*/,
16413  1832 /*offset_code (27480/15)*/,
16414  0 /*offset_remainder (27480%15)*/,
16415  0 /*delta_minutes*/,
16416  1905 /*until_year*/,
16417  8 /*until_month*/,
16418  1 /*until_day*/,
16419  0 /*until_time_code (0/15)*/,
16420  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16421  },
16422  // 7:00 - +07 1978
16423  {
16424  NULL /*zone_policy*/,
16425  "+07" /*format*/,
16426  1680 /*offset_code (25200/15)*/,
16427  0 /*offset_remainder (25200%15)*/,
16428  0 /*delta_minutes*/,
16429  1978 /*until_year*/,
16430  1 /*until_month*/,
16431  1 /*until_day*/,
16432  0 /*until_time_code (0/15)*/,
16433  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16434  },
16435  // 8:00 - +08 1983 Apr
16436  {
16437  NULL /*zone_policy*/,
16438  "+08" /*format*/,
16439  1920 /*offset_code (28800/15)*/,
16440  0 /*offset_remainder (28800%15)*/,
16441  0 /*delta_minutes*/,
16442  1983 /*until_year*/,
16443  4 /*until_month*/,
16444  1 /*until_day*/,
16445  0 /*until_time_code (0/15)*/,
16446  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16447  },
16448  // 9:00 Mongol +09/+10 2008 Mar 31
16449  {
16450  &kAtcAllZonePolicyMongol /*zone_policy*/,
16451  "+09/+10" /*format*/,
16452  2160 /*offset_code (32400/15)*/,
16453  0 /*offset_remainder (32400%15)*/,
16454  0 /*delta_minutes*/,
16455  2008 /*until_year*/,
16456  3 /*until_month*/,
16457  31 /*until_day*/,
16458  0 /*until_time_code (0/15)*/,
16459  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16460  },
16461  // 8:00 Mongol +08/+09
16462  {
16463  &kAtcAllZonePolicyMongol /*zone_policy*/,
16464  "+08/+09" /*format*/,
16465  1920 /*offset_code (28800/15)*/,
16466  0 /*offset_remainder (28800%15)*/,
16467  0 /*delta_minutes*/,
16468  32767 /*until_year*/,
16469  1 /*until_month*/,
16470  1 /*until_day*/,
16471  0 /*until_time_code (0/15)*/,
16472  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16473  },
16474 
16475 };
16476 
16477 static const char kAtcZoneNameAsia_Choibalsan[] = "Asia/Choibalsan";
16478 
16479 const AtcZoneInfo kAtcAllZoneAsia_Choibalsan = {
16480  kAtcZoneNameAsia_Choibalsan /*name*/,
16481  0x928aa4a6 /*zone_id*/,
16482  &kAtcAllZoneContext /*zone_context*/,
16483  5 /*num_eras*/,
16484  kAtcZoneEraAsia_Choibalsan /*eras*/,
16485  NULL /*target_info*/,
16486 };
16487 
16488 //---------------------------------------------------------------------------
16489 // Zone name: Asia/Colombo
16490 // Zone Eras: 9
16491 //---------------------------------------------------------------------------
16492 
16493 static const AtcZoneEra kAtcZoneEraAsia_Colombo[] = {
16494  // 5:19:24 - LMT 1880
16495  {
16496  NULL /*zone_policy*/,
16497  "LMT" /*format*/,
16498  1277 /*offset_code (19164/15)*/,
16499  9 /*offset_remainder (19164%15)*/,
16500  0 /*delta_minutes*/,
16501  1880 /*until_year*/,
16502  1 /*until_month*/,
16503  1 /*until_day*/,
16504  0 /*until_time_code (0/15)*/,
16505  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16506  },
16507  // 5:19:32 - MMT 1906
16508  {
16509  NULL /*zone_policy*/,
16510  "MMT" /*format*/,
16511  1278 /*offset_code (19172/15)*/,
16512  2 /*offset_remainder (19172%15)*/,
16513  0 /*delta_minutes*/,
16514  1906 /*until_year*/,
16515  1 /*until_month*/,
16516  1 /*until_day*/,
16517  0 /*until_time_code (0/15)*/,
16518  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16519  },
16520  // 5:30 - +0530 1942 Jan 5
16521  {
16522  NULL /*zone_policy*/,
16523  "+0530" /*format*/,
16524  1320 /*offset_code (19800/15)*/,
16525  0 /*offset_remainder (19800%15)*/,
16526  0 /*delta_minutes*/,
16527  1942 /*until_year*/,
16528  1 /*until_month*/,
16529  5 /*until_day*/,
16530  0 /*until_time_code (0/15)*/,
16531  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16532  },
16533  // 5:30 0:30 +06 1942 Sep
16534  {
16535  NULL /*zone_policy*/,
16536  "+06" /*format*/,
16537  1320 /*offset_code (19800/15)*/,
16538  0 /*offset_remainder (19800%15)*/,
16539  30 /*delta_minutes*/,
16540  1942 /*until_year*/,
16541  9 /*until_month*/,
16542  1 /*until_day*/,
16543  0 /*until_time_code (0/15)*/,
16544  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16545  },
16546  // 5:30 1:00 +0630 1945 Oct 16 2:00
16547  {
16548  NULL /*zone_policy*/,
16549  "+0630" /*format*/,
16550  1320 /*offset_code (19800/15)*/,
16551  0 /*offset_remainder (19800%15)*/,
16552  60 /*delta_minutes*/,
16553  1945 /*until_year*/,
16554  10 /*until_month*/,
16555  16 /*until_day*/,
16556  480 /*until_time_code (7200/15)*/,
16557  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16558  },
16559  // 5:30 - +0530 1996 May 25 0:00
16560  {
16561  NULL /*zone_policy*/,
16562  "+0530" /*format*/,
16563  1320 /*offset_code (19800/15)*/,
16564  0 /*offset_remainder (19800%15)*/,
16565  0 /*delta_minutes*/,
16566  1996 /*until_year*/,
16567  5 /*until_month*/,
16568  25 /*until_day*/,
16569  0 /*until_time_code (0/15)*/,
16570  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16571  },
16572  // 6:30 - +0630 1996 Oct 26 0:30
16573  {
16574  NULL /*zone_policy*/,
16575  "+0630" /*format*/,
16576  1560 /*offset_code (23400/15)*/,
16577  0 /*offset_remainder (23400%15)*/,
16578  0 /*delta_minutes*/,
16579  1996 /*until_year*/,
16580  10 /*until_month*/,
16581  26 /*until_day*/,
16582  120 /*until_time_code (1800/15)*/,
16583  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16584  },
16585  // 6:00 - +06 2006 Apr 15 0:30
16586  {
16587  NULL /*zone_policy*/,
16588  "+06" /*format*/,
16589  1440 /*offset_code (21600/15)*/,
16590  0 /*offset_remainder (21600%15)*/,
16591  0 /*delta_minutes*/,
16592  2006 /*until_year*/,
16593  4 /*until_month*/,
16594  15 /*until_day*/,
16595  120 /*until_time_code (1800/15)*/,
16596  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16597  },
16598  // 5:30 - +0530
16599  {
16600  NULL /*zone_policy*/,
16601  "+0530" /*format*/,
16602  1320 /*offset_code (19800/15)*/,
16603  0 /*offset_remainder (19800%15)*/,
16604  0 /*delta_minutes*/,
16605  32767 /*until_year*/,
16606  1 /*until_month*/,
16607  1 /*until_day*/,
16608  0 /*until_time_code (0/15)*/,
16609  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16610  },
16611 
16612 };
16613 
16614 static const char kAtcZoneNameAsia_Colombo[] = "Asia/Colombo";
16615 
16616 const AtcZoneInfo kAtcAllZoneAsia_Colombo = {
16617  kAtcZoneNameAsia_Colombo /*name*/,
16618  0x0af0e91d /*zone_id*/,
16619  &kAtcAllZoneContext /*zone_context*/,
16620  9 /*num_eras*/,
16621  kAtcZoneEraAsia_Colombo /*eras*/,
16622  NULL /*target_info*/,
16623 };
16624 
16625 //---------------------------------------------------------------------------
16626 // Zone name: Asia/Damascus
16627 // Zone Eras: 3
16628 //---------------------------------------------------------------------------
16629 
16630 static const AtcZoneEra kAtcZoneEraAsia_Damascus[] = {
16631  // 2:25:12 - LMT 1920
16632  {
16633  NULL /*zone_policy*/,
16634  "LMT" /*format*/,
16635  580 /*offset_code (8712/15)*/,
16636  12 /*offset_remainder (8712%15)*/,
16637  0 /*delta_minutes*/,
16638  1920 /*until_year*/,
16639  1 /*until_month*/,
16640  1 /*until_day*/,
16641  0 /*until_time_code (0/15)*/,
16642  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16643  },
16644  // 2:00 Syria EE%sT 2022 Oct 28 0:00
16645  {
16646  &kAtcAllZonePolicySyria /*zone_policy*/,
16647  "EE%T" /*format*/,
16648  480 /*offset_code (7200/15)*/,
16649  0 /*offset_remainder (7200%15)*/,
16650  0 /*delta_minutes*/,
16651  2022 /*until_year*/,
16652  10 /*until_month*/,
16653  28 /*until_day*/,
16654  0 /*until_time_code (0/15)*/,
16655  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16656  },
16657  // 3:00 - +03
16658  {
16659  NULL /*zone_policy*/,
16660  "+03" /*format*/,
16661  720 /*offset_code (10800/15)*/,
16662  0 /*offset_remainder (10800%15)*/,
16663  0 /*delta_minutes*/,
16664  32767 /*until_year*/,
16665  1 /*until_month*/,
16666  1 /*until_day*/,
16667  0 /*until_time_code (0/15)*/,
16668  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16669  },
16670 
16671 };
16672 
16673 static const char kAtcZoneNameAsia_Damascus[] = "Asia/Damascus";
16674 
16675 const AtcZoneInfo kAtcAllZoneAsia_Damascus = {
16676  kAtcZoneNameAsia_Damascus /*name*/,
16677  0x20fbb063 /*zone_id*/,
16678  &kAtcAllZoneContext /*zone_context*/,
16679  3 /*num_eras*/,
16680  kAtcZoneEraAsia_Damascus /*eras*/,
16681  NULL /*target_info*/,
16682 };
16683 
16684 //---------------------------------------------------------------------------
16685 // Zone name: Asia/Dhaka
16686 // Zone Eras: 7
16687 //---------------------------------------------------------------------------
16688 
16689 static const AtcZoneEra kAtcZoneEraAsia_Dhaka[] = {
16690  // 6:01:40 - LMT 1890
16691  {
16692  NULL /*zone_policy*/,
16693  "LMT" /*format*/,
16694  1446 /*offset_code (21700/15)*/,
16695  10 /*offset_remainder (21700%15)*/,
16696  0 /*delta_minutes*/,
16697  1890 /*until_year*/,
16698  1 /*until_month*/,
16699  1 /*until_day*/,
16700  0 /*until_time_code (0/15)*/,
16701  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16702  },
16703  // 5:53:20 - HMT 1941 Oct
16704  {
16705  NULL /*zone_policy*/,
16706  "HMT" /*format*/,
16707  1413 /*offset_code (21200/15)*/,
16708  5 /*offset_remainder (21200%15)*/,
16709  0 /*delta_minutes*/,
16710  1941 /*until_year*/,
16711  10 /*until_month*/,
16712  1 /*until_day*/,
16713  0 /*until_time_code (0/15)*/,
16714  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16715  },
16716  // 6:30 - +0630 1942 May 15
16717  {
16718  NULL /*zone_policy*/,
16719  "+0630" /*format*/,
16720  1560 /*offset_code (23400/15)*/,
16721  0 /*offset_remainder (23400%15)*/,
16722  0 /*delta_minutes*/,
16723  1942 /*until_year*/,
16724  5 /*until_month*/,
16725  15 /*until_day*/,
16726  0 /*until_time_code (0/15)*/,
16727  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16728  },
16729  // 5:30 - +0530 1942 Sep
16730  {
16731  NULL /*zone_policy*/,
16732  "+0530" /*format*/,
16733  1320 /*offset_code (19800/15)*/,
16734  0 /*offset_remainder (19800%15)*/,
16735  0 /*delta_minutes*/,
16736  1942 /*until_year*/,
16737  9 /*until_month*/,
16738  1 /*until_day*/,
16739  0 /*until_time_code (0/15)*/,
16740  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16741  },
16742  // 6:30 - +0630 1951 Sep 30
16743  {
16744  NULL /*zone_policy*/,
16745  "+0630" /*format*/,
16746  1560 /*offset_code (23400/15)*/,
16747  0 /*offset_remainder (23400%15)*/,
16748  0 /*delta_minutes*/,
16749  1951 /*until_year*/,
16750  9 /*until_month*/,
16751  30 /*until_day*/,
16752  0 /*until_time_code (0/15)*/,
16753  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16754  },
16755  // 6:00 - +06 2009
16756  {
16757  NULL /*zone_policy*/,
16758  "+06" /*format*/,
16759  1440 /*offset_code (21600/15)*/,
16760  0 /*offset_remainder (21600%15)*/,
16761  0 /*delta_minutes*/,
16762  2009 /*until_year*/,
16763  1 /*until_month*/,
16764  1 /*until_day*/,
16765  0 /*until_time_code (0/15)*/,
16766  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16767  },
16768  // 6:00 Dhaka +06/+07
16769  {
16770  &kAtcAllZonePolicyDhaka /*zone_policy*/,
16771  "+06/+07" /*format*/,
16772  1440 /*offset_code (21600/15)*/,
16773  0 /*offset_remainder (21600%15)*/,
16774  0 /*delta_minutes*/,
16775  32767 /*until_year*/,
16776  1 /*until_month*/,
16777  1 /*until_day*/,
16778  0 /*until_time_code (0/15)*/,
16779  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16780  },
16781 
16782 };
16783 
16784 static const char kAtcZoneNameAsia_Dhaka[] = "Asia/Dhaka";
16785 
16786 const AtcZoneInfo kAtcAllZoneAsia_Dhaka = {
16787  kAtcZoneNameAsia_Dhaka /*name*/,
16788  0x14c07b8b /*zone_id*/,
16789  &kAtcAllZoneContext /*zone_context*/,
16790  7 /*num_eras*/,
16791  kAtcZoneEraAsia_Dhaka /*eras*/,
16792  NULL /*target_info*/,
16793 };
16794 
16795 //---------------------------------------------------------------------------
16796 // Zone name: Asia/Dili
16797 // Zone Eras: 5
16798 //---------------------------------------------------------------------------
16799 
16800 static const AtcZoneEra kAtcZoneEraAsia_Dili[] = {
16801  // 8:22:20 - LMT 1912 Jan 1
16802  {
16803  NULL /*zone_policy*/,
16804  "LMT" /*format*/,
16805  2009 /*offset_code (30140/15)*/,
16806  5 /*offset_remainder (30140%15)*/,
16807  0 /*delta_minutes*/,
16808  1912 /*until_year*/,
16809  1 /*until_month*/,
16810  1 /*until_day*/,
16811  0 /*until_time_code (0/15)*/,
16812  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16813  },
16814  // 8:00 - +08 1942 Feb 21 23:00
16815  {
16816  NULL /*zone_policy*/,
16817  "+08" /*format*/,
16818  1920 /*offset_code (28800/15)*/,
16819  0 /*offset_remainder (28800%15)*/,
16820  0 /*delta_minutes*/,
16821  1942 /*until_year*/,
16822  2 /*until_month*/,
16823  21 /*until_day*/,
16824  5520 /*until_time_code (82800/15)*/,
16825  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16826  },
16827  // 9:00 - +09 1976 May 3
16828  {
16829  NULL /*zone_policy*/,
16830  "+09" /*format*/,
16831  2160 /*offset_code (32400/15)*/,
16832  0 /*offset_remainder (32400%15)*/,
16833  0 /*delta_minutes*/,
16834  1976 /*until_year*/,
16835  5 /*until_month*/,
16836  3 /*until_day*/,
16837  0 /*until_time_code (0/15)*/,
16838  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16839  },
16840  // 8:00 - +08 2000 Sep 17 0:00
16841  {
16842  NULL /*zone_policy*/,
16843  "+08" /*format*/,
16844  1920 /*offset_code (28800/15)*/,
16845  0 /*offset_remainder (28800%15)*/,
16846  0 /*delta_minutes*/,
16847  2000 /*until_year*/,
16848  9 /*until_month*/,
16849  17 /*until_day*/,
16850  0 /*until_time_code (0/15)*/,
16851  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16852  },
16853  // 9:00 - +09
16854  {
16855  NULL /*zone_policy*/,
16856  "+09" /*format*/,
16857  2160 /*offset_code (32400/15)*/,
16858  0 /*offset_remainder (32400%15)*/,
16859  0 /*delta_minutes*/,
16860  32767 /*until_year*/,
16861  1 /*until_month*/,
16862  1 /*until_day*/,
16863  0 /*until_time_code (0/15)*/,
16864  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16865  },
16866 
16867 };
16868 
16869 static const char kAtcZoneNameAsia_Dili[] = "Asia/Dili";
16870 
16871 const AtcZoneInfo kAtcAllZoneAsia_Dili = {
16872  kAtcZoneNameAsia_Dili /*name*/,
16873  0x1fa8c394 /*zone_id*/,
16874  &kAtcAllZoneContext /*zone_context*/,
16875  5 /*num_eras*/,
16876  kAtcZoneEraAsia_Dili /*eras*/,
16877  NULL /*target_info*/,
16878 };
16879 
16880 //---------------------------------------------------------------------------
16881 // Zone name: Asia/Dubai
16882 // Zone Eras: 2
16883 //---------------------------------------------------------------------------
16884 
16885 static const AtcZoneEra kAtcZoneEraAsia_Dubai[] = {
16886  // 3:41:12 - LMT 1920
16887  {
16888  NULL /*zone_policy*/,
16889  "LMT" /*format*/,
16890  884 /*offset_code (13272/15)*/,
16891  12 /*offset_remainder (13272%15)*/,
16892  0 /*delta_minutes*/,
16893  1920 /*until_year*/,
16894  1 /*until_month*/,
16895  1 /*until_day*/,
16896  0 /*until_time_code (0/15)*/,
16897  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16898  },
16899  // 4:00 - +04
16900  {
16901  NULL /*zone_policy*/,
16902  "+04" /*format*/,
16903  960 /*offset_code (14400/15)*/,
16904  0 /*offset_remainder (14400%15)*/,
16905  0 /*delta_minutes*/,
16906  32767 /*until_year*/,
16907  1 /*until_month*/,
16908  1 /*until_day*/,
16909  0 /*until_time_code (0/15)*/,
16910  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16911  },
16912 
16913 };
16914 
16915 static const char kAtcZoneNameAsia_Dubai[] = "Asia/Dubai";
16916 
16917 const AtcZoneInfo kAtcAllZoneAsia_Dubai = {
16918  kAtcZoneNameAsia_Dubai /*name*/,
16919  0x14c79f77 /*zone_id*/,
16920  &kAtcAllZoneContext /*zone_context*/,
16921  2 /*num_eras*/,
16922  kAtcZoneEraAsia_Dubai /*eras*/,
16923  NULL /*target_info*/,
16924 };
16925 
16926 //---------------------------------------------------------------------------
16927 // Zone name: Asia/Dushanbe
16928 // Zone Eras: 5
16929 //---------------------------------------------------------------------------
16930 
16931 static const AtcZoneEra kAtcZoneEraAsia_Dushanbe[] = {
16932  // 4:35:12 - LMT 1924 May 2
16933  {
16934  NULL /*zone_policy*/,
16935  "LMT" /*format*/,
16936  1100 /*offset_code (16512/15)*/,
16937  12 /*offset_remainder (16512%15)*/,
16938  0 /*delta_minutes*/,
16939  1924 /*until_year*/,
16940  5 /*until_month*/,
16941  2 /*until_day*/,
16942  0 /*until_time_code (0/15)*/,
16943  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16944  },
16945  // 5:00 - +05 1930 Jun 21
16946  {
16947  NULL /*zone_policy*/,
16948  "+05" /*format*/,
16949  1200 /*offset_code (18000/15)*/,
16950  0 /*offset_remainder (18000%15)*/,
16951  0 /*delta_minutes*/,
16952  1930 /*until_year*/,
16953  6 /*until_month*/,
16954  21 /*until_day*/,
16955  0 /*until_time_code (0/15)*/,
16956  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16957  },
16958  // 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
16959  {
16960  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
16961  "+06/+07" /*format*/,
16962  1440 /*offset_code (21600/15)*/,
16963  0 /*offset_remainder (21600%15)*/,
16964  0 /*delta_minutes*/,
16965  1991 /*until_year*/,
16966  3 /*until_month*/,
16967  31 /*until_day*/,
16968  480 /*until_time_code (7200/15)*/,
16969  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16970  },
16971  // 5:00 1:00 +06 1991 Sep 9 2:00s
16972  {
16973  NULL /*zone_policy*/,
16974  "+06" /*format*/,
16975  1200 /*offset_code (18000/15)*/,
16976  0 /*offset_remainder (18000%15)*/,
16977  60 /*delta_minutes*/,
16978  1991 /*until_year*/,
16979  9 /*until_month*/,
16980  9 /*until_day*/,
16981  480 /*until_time_code (7200/15)*/,
16982  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
16983  },
16984  // 5:00 - +05
16985  {
16986  NULL /*zone_policy*/,
16987  "+05" /*format*/,
16988  1200 /*offset_code (18000/15)*/,
16989  0 /*offset_remainder (18000%15)*/,
16990  0 /*delta_minutes*/,
16991  32767 /*until_year*/,
16992  1 /*until_month*/,
16993  1 /*until_day*/,
16994  0 /*until_time_code (0/15)*/,
16995  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
16996  },
16997 
16998 };
16999 
17000 static const char kAtcZoneNameAsia_Dushanbe[] = "Asia/Dushanbe";
17001 
17002 const AtcZoneInfo kAtcAllZoneAsia_Dushanbe = {
17003  kAtcZoneNameAsia_Dushanbe /*name*/,
17004  0x32fc5c3c /*zone_id*/,
17005  &kAtcAllZoneContext /*zone_context*/,
17006  5 /*num_eras*/,
17007  kAtcZoneEraAsia_Dushanbe /*eras*/,
17008  NULL /*target_info*/,
17009 };
17010 
17011 //---------------------------------------------------------------------------
17012 // Zone name: Asia/Famagusta
17013 // Zone Eras: 5
17014 //---------------------------------------------------------------------------
17015 
17016 static const AtcZoneEra kAtcZoneEraAsia_Famagusta[] = {
17017  // 2:15:48 - LMT 1921 Nov 14
17018  {
17019  NULL /*zone_policy*/,
17020  "LMT" /*format*/,
17021  543 /*offset_code (8148/15)*/,
17022  3 /*offset_remainder (8148%15)*/,
17023  0 /*delta_minutes*/,
17024  1921 /*until_year*/,
17025  11 /*until_month*/,
17026  14 /*until_day*/,
17027  0 /*until_time_code (0/15)*/,
17028  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17029  },
17030  // 2:00 Cyprus EE%sT 1998 Sep
17031  {
17032  &kAtcAllZonePolicyCyprus /*zone_policy*/,
17033  "EE%T" /*format*/,
17034  480 /*offset_code (7200/15)*/,
17035  0 /*offset_remainder (7200%15)*/,
17036  0 /*delta_minutes*/,
17037  1998 /*until_year*/,
17038  9 /*until_month*/,
17039  1 /*until_day*/,
17040  0 /*until_time_code (0/15)*/,
17041  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17042  },
17043  // 2:00 EUAsia EE%sT 2016 Sep 8
17044  {
17045  &kAtcAllZonePolicyEUAsia /*zone_policy*/,
17046  "EE%T" /*format*/,
17047  480 /*offset_code (7200/15)*/,
17048  0 /*offset_remainder (7200%15)*/,
17049  0 /*delta_minutes*/,
17050  2016 /*until_year*/,
17051  9 /*until_month*/,
17052  8 /*until_day*/,
17053  0 /*until_time_code (0/15)*/,
17054  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17055  },
17056  // 3:00 - +03 2017 Oct 29 1:00u
17057  {
17058  NULL /*zone_policy*/,
17059  "+03" /*format*/,
17060  720 /*offset_code (10800/15)*/,
17061  0 /*offset_remainder (10800%15)*/,
17062  0 /*delta_minutes*/,
17063  2017 /*until_year*/,
17064  10 /*until_month*/,
17065  29 /*until_day*/,
17066  240 /*until_time_code (3600/15)*/,
17067  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
17068  },
17069  // 2:00 EUAsia EE%sT
17070  {
17071  &kAtcAllZonePolicyEUAsia /*zone_policy*/,
17072  "EE%T" /*format*/,
17073  480 /*offset_code (7200/15)*/,
17074  0 /*offset_remainder (7200%15)*/,
17075  0 /*delta_minutes*/,
17076  32767 /*until_year*/,
17077  1 /*until_month*/,
17078  1 /*until_day*/,
17079  0 /*until_time_code (0/15)*/,
17080  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17081  },
17082 
17083 };
17084 
17085 static const char kAtcZoneNameAsia_Famagusta[] = "Asia/Famagusta";
17086 
17087 const AtcZoneInfo kAtcAllZoneAsia_Famagusta = {
17088  kAtcZoneNameAsia_Famagusta /*name*/,
17089  0x289b4f8b /*zone_id*/,
17090  &kAtcAllZoneContext /*zone_context*/,
17091  5 /*num_eras*/,
17092  kAtcZoneEraAsia_Famagusta /*eras*/,
17093  NULL /*target_info*/,
17094 };
17095 
17096 //---------------------------------------------------------------------------
17097 // Zone name: Asia/Gaza
17098 // Zone Eras: 12
17099 //---------------------------------------------------------------------------
17100 
17101 static const AtcZoneEra kAtcZoneEraAsia_Gaza[] = {
17102  // 2:17:52 - LMT 1900 Oct
17103  {
17104  NULL /*zone_policy*/,
17105  "LMT" /*format*/,
17106  551 /*offset_code (8272/15)*/,
17107  7 /*offset_remainder (8272%15)*/,
17108  0 /*delta_minutes*/,
17109  1900 /*until_year*/,
17110  10 /*until_month*/,
17111  1 /*until_day*/,
17112  0 /*until_time_code (0/15)*/,
17113  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17114  },
17115  // 2:00 Zion EET/EEST 1948 May 15
17116  {
17117  &kAtcAllZonePolicyZion /*zone_policy*/,
17118  "EET/EEST" /*format*/,
17119  480 /*offset_code (7200/15)*/,
17120  0 /*offset_remainder (7200%15)*/,
17121  0 /*delta_minutes*/,
17122  1948 /*until_year*/,
17123  5 /*until_month*/,
17124  15 /*until_day*/,
17125  0 /*until_time_code (0/15)*/,
17126  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17127  },
17128  // 2:00 EgyptAsia EE%sT 1967 Jun 5
17129  {
17130  &kAtcAllZonePolicyEgyptAsia /*zone_policy*/,
17131  "EE%T" /*format*/,
17132  480 /*offset_code (7200/15)*/,
17133  0 /*offset_remainder (7200%15)*/,
17134  0 /*delta_minutes*/,
17135  1967 /*until_year*/,
17136  6 /*until_month*/,
17137  5 /*until_day*/,
17138  0 /*until_time_code (0/15)*/,
17139  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17140  },
17141  // 2:00 Zion I%sT 1996
17142  {
17143  &kAtcAllZonePolicyZion /*zone_policy*/,
17144  "I%T" /*format*/,
17145  480 /*offset_code (7200/15)*/,
17146  0 /*offset_remainder (7200%15)*/,
17147  0 /*delta_minutes*/,
17148  1996 /*until_year*/,
17149  1 /*until_month*/,
17150  1 /*until_day*/,
17151  0 /*until_time_code (0/15)*/,
17152  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17153  },
17154  // 2:00 Jordan EE%sT 1999
17155  {
17156  &kAtcAllZonePolicyJordan /*zone_policy*/,
17157  "EE%T" /*format*/,
17158  480 /*offset_code (7200/15)*/,
17159  0 /*offset_remainder (7200%15)*/,
17160  0 /*delta_minutes*/,
17161  1999 /*until_year*/,
17162  1 /*until_month*/,
17163  1 /*until_day*/,
17164  0 /*until_time_code (0/15)*/,
17165  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17166  },
17167  // 2:00 Palestine EE%sT 2008 Aug 29 0:00
17168  {
17169  &kAtcAllZonePolicyPalestine /*zone_policy*/,
17170  "EE%T" /*format*/,
17171  480 /*offset_code (7200/15)*/,
17172  0 /*offset_remainder (7200%15)*/,
17173  0 /*delta_minutes*/,
17174  2008 /*until_year*/,
17175  8 /*until_month*/,
17176  29 /*until_day*/,
17177  0 /*until_time_code (0/15)*/,
17178  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17179  },
17180  // 2:00 - EET 2008 Sep
17181  {
17182  NULL /*zone_policy*/,
17183  "EET" /*format*/,
17184  480 /*offset_code (7200/15)*/,
17185  0 /*offset_remainder (7200%15)*/,
17186  0 /*delta_minutes*/,
17187  2008 /*until_year*/,
17188  9 /*until_month*/,
17189  1 /*until_day*/,
17190  0 /*until_time_code (0/15)*/,
17191  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17192  },
17193  // 2:00 Palestine EE%sT 2010
17194  {
17195  &kAtcAllZonePolicyPalestine /*zone_policy*/,
17196  "EE%T" /*format*/,
17197  480 /*offset_code (7200/15)*/,
17198  0 /*offset_remainder (7200%15)*/,
17199  0 /*delta_minutes*/,
17200  2010 /*until_year*/,
17201  1 /*until_month*/,
17202  1 /*until_day*/,
17203  0 /*until_time_code (0/15)*/,
17204  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17205  },
17206  // 2:00 - EET 2010 Mar 27 0:01
17207  {
17208  NULL /*zone_policy*/,
17209  "EET" /*format*/,
17210  480 /*offset_code (7200/15)*/,
17211  0 /*offset_remainder (7200%15)*/,
17212  0 /*delta_minutes*/,
17213  2010 /*until_year*/,
17214  3 /*until_month*/,
17215  27 /*until_day*/,
17216  4 /*until_time_code (60/15)*/,
17217  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17218  },
17219  // 2:00 Palestine EE%sT 2011 Aug 1
17220  {
17221  &kAtcAllZonePolicyPalestine /*zone_policy*/,
17222  "EE%T" /*format*/,
17223  480 /*offset_code (7200/15)*/,
17224  0 /*offset_remainder (7200%15)*/,
17225  0 /*delta_minutes*/,
17226  2011 /*until_year*/,
17227  8 /*until_month*/,
17228  1 /*until_day*/,
17229  0 /*until_time_code (0/15)*/,
17230  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17231  },
17232  // 2:00 - EET 2012
17233  {
17234  NULL /*zone_policy*/,
17235  "EET" /*format*/,
17236  480 /*offset_code (7200/15)*/,
17237  0 /*offset_remainder (7200%15)*/,
17238  0 /*delta_minutes*/,
17239  2012 /*until_year*/,
17240  1 /*until_month*/,
17241  1 /*until_day*/,
17242  0 /*until_time_code (0/15)*/,
17243  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17244  },
17245  // 2:00 Palestine EE%sT
17246  {
17247  &kAtcAllZonePolicyPalestine /*zone_policy*/,
17248  "EE%T" /*format*/,
17249  480 /*offset_code (7200/15)*/,
17250  0 /*offset_remainder (7200%15)*/,
17251  0 /*delta_minutes*/,
17252  32767 /*until_year*/,
17253  1 /*until_month*/,
17254  1 /*until_day*/,
17255  0 /*until_time_code (0/15)*/,
17256  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17257  },
17258 
17259 };
17260 
17261 static const char kAtcZoneNameAsia_Gaza[] = "Asia/Gaza";
17262 
17263 const AtcZoneInfo kAtcAllZoneAsia_Gaza = {
17264  kAtcZoneNameAsia_Gaza /*name*/,
17265  0x1faa4875 /*zone_id*/,
17266  &kAtcAllZoneContext /*zone_context*/,
17267  12 /*num_eras*/,
17268  kAtcZoneEraAsia_Gaza /*eras*/,
17269  NULL /*target_info*/,
17270 };
17271 
17272 //---------------------------------------------------------------------------
17273 // Zone name: Asia/Hebron
17274 // Zone Eras: 6
17275 //---------------------------------------------------------------------------
17276 
17277 static const AtcZoneEra kAtcZoneEraAsia_Hebron[] = {
17278  // 2:20:23 - LMT 1900 Oct
17279  {
17280  NULL /*zone_policy*/,
17281  "LMT" /*format*/,
17282  561 /*offset_code (8423/15)*/,
17283  8 /*offset_remainder (8423%15)*/,
17284  0 /*delta_minutes*/,
17285  1900 /*until_year*/,
17286  10 /*until_month*/,
17287  1 /*until_day*/,
17288  0 /*until_time_code (0/15)*/,
17289  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17290  },
17291  // 2:00 Zion EET/EEST 1948 May 15
17292  {
17293  &kAtcAllZonePolicyZion /*zone_policy*/,
17294  "EET/EEST" /*format*/,
17295  480 /*offset_code (7200/15)*/,
17296  0 /*offset_remainder (7200%15)*/,
17297  0 /*delta_minutes*/,
17298  1948 /*until_year*/,
17299  5 /*until_month*/,
17300  15 /*until_day*/,
17301  0 /*until_time_code (0/15)*/,
17302  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17303  },
17304  // 2:00 EgyptAsia EE%sT 1967 Jun 5
17305  {
17306  &kAtcAllZonePolicyEgyptAsia /*zone_policy*/,
17307  "EE%T" /*format*/,
17308  480 /*offset_code (7200/15)*/,
17309  0 /*offset_remainder (7200%15)*/,
17310  0 /*delta_minutes*/,
17311  1967 /*until_year*/,
17312  6 /*until_month*/,
17313  5 /*until_day*/,
17314  0 /*until_time_code (0/15)*/,
17315  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17316  },
17317  // 2:00 Zion I%sT 1996
17318  {
17319  &kAtcAllZonePolicyZion /*zone_policy*/,
17320  "I%T" /*format*/,
17321  480 /*offset_code (7200/15)*/,
17322  0 /*offset_remainder (7200%15)*/,
17323  0 /*delta_minutes*/,
17324  1996 /*until_year*/,
17325  1 /*until_month*/,
17326  1 /*until_day*/,
17327  0 /*until_time_code (0/15)*/,
17328  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17329  },
17330  // 2:00 Jordan EE%sT 1999
17331  {
17332  &kAtcAllZonePolicyJordan /*zone_policy*/,
17333  "EE%T" /*format*/,
17334  480 /*offset_code (7200/15)*/,
17335  0 /*offset_remainder (7200%15)*/,
17336  0 /*delta_minutes*/,
17337  1999 /*until_year*/,
17338  1 /*until_month*/,
17339  1 /*until_day*/,
17340  0 /*until_time_code (0/15)*/,
17341  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17342  },
17343  // 2:00 Palestine EE%sT
17344  {
17345  &kAtcAllZonePolicyPalestine /*zone_policy*/,
17346  "EE%T" /*format*/,
17347  480 /*offset_code (7200/15)*/,
17348  0 /*offset_remainder (7200%15)*/,
17349  0 /*delta_minutes*/,
17350  32767 /*until_year*/,
17351  1 /*until_month*/,
17352  1 /*until_day*/,
17353  0 /*until_time_code (0/15)*/,
17354  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17355  },
17356 
17357 };
17358 
17359 static const char kAtcZoneNameAsia_Hebron[] = "Asia/Hebron";
17360 
17361 const AtcZoneInfo kAtcAllZoneAsia_Hebron = {
17362  kAtcZoneNameAsia_Hebron /*name*/,
17363  0xb5eef250 /*zone_id*/,
17364  &kAtcAllZoneContext /*zone_context*/,
17365  6 /*num_eras*/,
17366  kAtcZoneEraAsia_Hebron /*eras*/,
17367  NULL /*target_info*/,
17368 };
17369 
17370 //---------------------------------------------------------------------------
17371 // Zone name: Asia/Ho_Chi_Minh
17372 // Zone Eras: 10
17373 //---------------------------------------------------------------------------
17374 
17375 static const AtcZoneEra kAtcZoneEraAsia_Ho_Chi_Minh[] = {
17376  // 7:06:30 - LMT 1906 Jul 1
17377  {
17378  NULL /*zone_policy*/,
17379  "LMT" /*format*/,
17380  1706 /*offset_code (25590/15)*/,
17381  0 /*offset_remainder (25590%15)*/,
17382  0 /*delta_minutes*/,
17383  1906 /*until_year*/,
17384  7 /*until_month*/,
17385  1 /*until_day*/,
17386  0 /*until_time_code (0/15)*/,
17387  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17388  },
17389  // 7:06:30 - PLMT 1911 May 1
17390  {
17391  NULL /*zone_policy*/,
17392  "PLMT" /*format*/,
17393  1706 /*offset_code (25590/15)*/,
17394  0 /*offset_remainder (25590%15)*/,
17395  0 /*delta_minutes*/,
17396  1911 /*until_year*/,
17397  5 /*until_month*/,
17398  1 /*until_day*/,
17399  0 /*until_time_code (0/15)*/,
17400  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17401  },
17402  // 7:00 - +07 1942 Dec 31 23:00
17403  {
17404  NULL /*zone_policy*/,
17405  "+07" /*format*/,
17406  1680 /*offset_code (25200/15)*/,
17407  0 /*offset_remainder (25200%15)*/,
17408  0 /*delta_minutes*/,
17409  1942 /*until_year*/,
17410  12 /*until_month*/,
17411  31 /*until_day*/,
17412  5520 /*until_time_code (82800/15)*/,
17413  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17414  },
17415  // 8:00 - +08 1945 Mar 14 23:00
17416  {
17417  NULL /*zone_policy*/,
17418  "+08" /*format*/,
17419  1920 /*offset_code (28800/15)*/,
17420  0 /*offset_remainder (28800%15)*/,
17421  0 /*delta_minutes*/,
17422  1945 /*until_year*/,
17423  3 /*until_month*/,
17424  14 /*until_day*/,
17425  5520 /*until_time_code (82800/15)*/,
17426  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17427  },
17428  // 9:00 - +09 1945 Sep 2
17429  {
17430  NULL /*zone_policy*/,
17431  "+09" /*format*/,
17432  2160 /*offset_code (32400/15)*/,
17433  0 /*offset_remainder (32400%15)*/,
17434  0 /*delta_minutes*/,
17435  1945 /*until_year*/,
17436  9 /*until_month*/,
17437  2 /*until_day*/,
17438  0 /*until_time_code (0/15)*/,
17439  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17440  },
17441  // 7:00 - +07 1947 Apr 1
17442  {
17443  NULL /*zone_policy*/,
17444  "+07" /*format*/,
17445  1680 /*offset_code (25200/15)*/,
17446  0 /*offset_remainder (25200%15)*/,
17447  0 /*delta_minutes*/,
17448  1947 /*until_year*/,
17449  4 /*until_month*/,
17450  1 /*until_day*/,
17451  0 /*until_time_code (0/15)*/,
17452  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17453  },
17454  // 8:00 - +08 1955 Jul 1
17455  {
17456  NULL /*zone_policy*/,
17457  "+08" /*format*/,
17458  1920 /*offset_code (28800/15)*/,
17459  0 /*offset_remainder (28800%15)*/,
17460  0 /*delta_minutes*/,
17461  1955 /*until_year*/,
17462  7 /*until_month*/,
17463  1 /*until_day*/,
17464  0 /*until_time_code (0/15)*/,
17465  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17466  },
17467  // 7:00 - +07 1959 Dec 31 23:00
17468  {
17469  NULL /*zone_policy*/,
17470  "+07" /*format*/,
17471  1680 /*offset_code (25200/15)*/,
17472  0 /*offset_remainder (25200%15)*/,
17473  0 /*delta_minutes*/,
17474  1959 /*until_year*/,
17475  12 /*until_month*/,
17476  31 /*until_day*/,
17477  5520 /*until_time_code (82800/15)*/,
17478  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17479  },
17480  // 8:00 - +08 1975 Jun 13
17481  {
17482  NULL /*zone_policy*/,
17483  "+08" /*format*/,
17484  1920 /*offset_code (28800/15)*/,
17485  0 /*offset_remainder (28800%15)*/,
17486  0 /*delta_minutes*/,
17487  1975 /*until_year*/,
17488  6 /*until_month*/,
17489  13 /*until_day*/,
17490  0 /*until_time_code (0/15)*/,
17491  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17492  },
17493  // 7:00 - +07
17494  {
17495  NULL /*zone_policy*/,
17496  "+07" /*format*/,
17497  1680 /*offset_code (25200/15)*/,
17498  0 /*offset_remainder (25200%15)*/,
17499  0 /*delta_minutes*/,
17500  32767 /*until_year*/,
17501  1 /*until_month*/,
17502  1 /*until_day*/,
17503  0 /*until_time_code (0/15)*/,
17504  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17505  },
17506 
17507 };
17508 
17509 static const char kAtcZoneNameAsia_Ho_Chi_Minh[] = "Asia/Ho_Chi_Minh";
17510 
17511 const AtcZoneInfo kAtcAllZoneAsia_Ho_Chi_Minh = {
17512  kAtcZoneNameAsia_Ho_Chi_Minh /*name*/,
17513  0x20f2d127 /*zone_id*/,
17514  &kAtcAllZoneContext /*zone_context*/,
17515  10 /*num_eras*/,
17516  kAtcZoneEraAsia_Ho_Chi_Minh /*eras*/,
17517  NULL /*target_info*/,
17518 };
17519 
17520 //---------------------------------------------------------------------------
17521 // Zone name: Asia/Hong_Kong
17522 // Zone Eras: 6
17523 //---------------------------------------------------------------------------
17524 
17525 static const AtcZoneEra kAtcZoneEraAsia_Hong_Kong[] = {
17526  // 7:36:42 - LMT 1904 Oct 29 17:00u
17527  {
17528  NULL /*zone_policy*/,
17529  "LMT" /*format*/,
17530  1826 /*offset_code (27402/15)*/,
17531  12 /*offset_remainder (27402%15)*/,
17532  0 /*delta_minutes*/,
17533  1904 /*until_year*/,
17534  10 /*until_month*/,
17535  29 /*until_day*/,
17536  4080 /*until_time_code (61200/15)*/,
17537  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
17538  },
17539  // 8:00 - HKT 1941 Jun 15 3:00
17540  {
17541  NULL /*zone_policy*/,
17542  "HKT" /*format*/,
17543  1920 /*offset_code (28800/15)*/,
17544  0 /*offset_remainder (28800%15)*/,
17545  0 /*delta_minutes*/,
17546  1941 /*until_year*/,
17547  6 /*until_month*/,
17548  15 /*until_day*/,
17549  720 /*until_time_code (10800/15)*/,
17550  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17551  },
17552  // 8:00 1:00 HKST 1941 Oct 1 4:00
17553  {
17554  NULL /*zone_policy*/,
17555  "HKST" /*format*/,
17556  1920 /*offset_code (28800/15)*/,
17557  0 /*offset_remainder (28800%15)*/,
17558  60 /*delta_minutes*/,
17559  1941 /*until_year*/,
17560  10 /*until_month*/,
17561  1 /*until_day*/,
17562  960 /*until_time_code (14400/15)*/,
17563  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17564  },
17565  // 8:00 0:30 HKWT 1941 Dec 25
17566  {
17567  NULL /*zone_policy*/,
17568  "HKWT" /*format*/,
17569  1920 /*offset_code (28800/15)*/,
17570  0 /*offset_remainder (28800%15)*/,
17571  30 /*delta_minutes*/,
17572  1941 /*until_year*/,
17573  12 /*until_month*/,
17574  25 /*until_day*/,
17575  0 /*until_time_code (0/15)*/,
17576  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17577  },
17578  // 9:00 - JST 1945 Nov 18 2:00
17579  {
17580  NULL /*zone_policy*/,
17581  "JST" /*format*/,
17582  2160 /*offset_code (32400/15)*/,
17583  0 /*offset_remainder (32400%15)*/,
17584  0 /*delta_minutes*/,
17585  1945 /*until_year*/,
17586  11 /*until_month*/,
17587  18 /*until_day*/,
17588  480 /*until_time_code (7200/15)*/,
17589  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17590  },
17591  // 8:00 HK HK%sT
17592  {
17593  &kAtcAllZonePolicyHK /*zone_policy*/,
17594  "HK%T" /*format*/,
17595  1920 /*offset_code (28800/15)*/,
17596  0 /*offset_remainder (28800%15)*/,
17597  0 /*delta_minutes*/,
17598  32767 /*until_year*/,
17599  1 /*until_month*/,
17600  1 /*until_day*/,
17601  0 /*until_time_code (0/15)*/,
17602  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17603  },
17604 
17605 };
17606 
17607 static const char kAtcZoneNameAsia_Hong_Kong[] = "Asia/Hong_Kong";
17608 
17609 const AtcZoneInfo kAtcAllZoneAsia_Hong_Kong = {
17610  kAtcZoneNameAsia_Hong_Kong /*name*/,
17611  0x577f28ac /*zone_id*/,
17612  &kAtcAllZoneContext /*zone_context*/,
17613  6 /*num_eras*/,
17614  kAtcZoneEraAsia_Hong_Kong /*eras*/,
17615  NULL /*target_info*/,
17616 };
17617 
17618 //---------------------------------------------------------------------------
17619 // Zone name: Asia/Hovd
17620 // Zone Eras: 3
17621 //---------------------------------------------------------------------------
17622 
17623 static const AtcZoneEra kAtcZoneEraAsia_Hovd[] = {
17624  // 6:06:36 - LMT 1905 Aug
17625  {
17626  NULL /*zone_policy*/,
17627  "LMT" /*format*/,
17628  1466 /*offset_code (21996/15)*/,
17629  6 /*offset_remainder (21996%15)*/,
17630  0 /*delta_minutes*/,
17631  1905 /*until_year*/,
17632  8 /*until_month*/,
17633  1 /*until_day*/,
17634  0 /*until_time_code (0/15)*/,
17635  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17636  },
17637  // 6:00 - +06 1978
17638  {
17639  NULL /*zone_policy*/,
17640  "+06" /*format*/,
17641  1440 /*offset_code (21600/15)*/,
17642  0 /*offset_remainder (21600%15)*/,
17643  0 /*delta_minutes*/,
17644  1978 /*until_year*/,
17645  1 /*until_month*/,
17646  1 /*until_day*/,
17647  0 /*until_time_code (0/15)*/,
17648  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17649  },
17650  // 7:00 Mongol +07/+08
17651  {
17652  &kAtcAllZonePolicyMongol /*zone_policy*/,
17653  "+07/+08" /*format*/,
17654  1680 /*offset_code (25200/15)*/,
17655  0 /*offset_remainder (25200%15)*/,
17656  0 /*delta_minutes*/,
17657  32767 /*until_year*/,
17658  1 /*until_month*/,
17659  1 /*until_day*/,
17660  0 /*until_time_code (0/15)*/,
17661  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17662  },
17663 
17664 };
17665 
17666 static const char kAtcZoneNameAsia_Hovd[] = "Asia/Hovd";
17667 
17668 const AtcZoneInfo kAtcAllZoneAsia_Hovd = {
17669  kAtcZoneNameAsia_Hovd /*name*/,
17670  0x1fab0fe3 /*zone_id*/,
17671  &kAtcAllZoneContext /*zone_context*/,
17672  3 /*num_eras*/,
17673  kAtcZoneEraAsia_Hovd /*eras*/,
17674  NULL /*target_info*/,
17675 };
17676 
17677 //---------------------------------------------------------------------------
17678 // Zone name: Asia/Irkutsk
17679 // Zone Eras: 8
17680 //---------------------------------------------------------------------------
17681 
17682 static const AtcZoneEra kAtcZoneEraAsia_Irkutsk[] = {
17683  // 6:57:05 - LMT 1880
17684  {
17685  NULL /*zone_policy*/,
17686  "LMT" /*format*/,
17687  1668 /*offset_code (25025/15)*/,
17688  5 /*offset_remainder (25025%15)*/,
17689  0 /*delta_minutes*/,
17690  1880 /*until_year*/,
17691  1 /*until_month*/,
17692  1 /*until_day*/,
17693  0 /*until_time_code (0/15)*/,
17694  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17695  },
17696  // 6:57:05 - IMT 1920 Jan 25
17697  {
17698  NULL /*zone_policy*/,
17699  "IMT" /*format*/,
17700  1668 /*offset_code (25025/15)*/,
17701  5 /*offset_remainder (25025%15)*/,
17702  0 /*delta_minutes*/,
17703  1920 /*until_year*/,
17704  1 /*until_month*/,
17705  25 /*until_day*/,
17706  0 /*until_time_code (0/15)*/,
17707  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17708  },
17709  // 7:00 - +07 1930 Jun 21
17710  {
17711  NULL /*zone_policy*/,
17712  "+07" /*format*/,
17713  1680 /*offset_code (25200/15)*/,
17714  0 /*offset_remainder (25200%15)*/,
17715  0 /*delta_minutes*/,
17716  1930 /*until_year*/,
17717  6 /*until_month*/,
17718  21 /*until_day*/,
17719  0 /*until_time_code (0/15)*/,
17720  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17721  },
17722  // 8:00 Russia +08/+09 1991 Mar 31 2:00s
17723  {
17724  &kAtcAllZonePolicyRussia /*zone_policy*/,
17725  "+08/+09" /*format*/,
17726  1920 /*offset_code (28800/15)*/,
17727  0 /*offset_remainder (28800%15)*/,
17728  0 /*delta_minutes*/,
17729  1991 /*until_year*/,
17730  3 /*until_month*/,
17731  31 /*until_day*/,
17732  480 /*until_time_code (7200/15)*/,
17733  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
17734  },
17735  // 7:00 Russia +07/+08 1992 Jan 19 2:00s
17736  {
17737  &kAtcAllZonePolicyRussia /*zone_policy*/,
17738  "+07/+08" /*format*/,
17739  1680 /*offset_code (25200/15)*/,
17740  0 /*offset_remainder (25200%15)*/,
17741  0 /*delta_minutes*/,
17742  1992 /*until_year*/,
17743  1 /*until_month*/,
17744  19 /*until_day*/,
17745  480 /*until_time_code (7200/15)*/,
17746  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
17747  },
17748  // 8:00 Russia +08/+09 2011 Mar 27 2:00s
17749  {
17750  &kAtcAllZonePolicyRussia /*zone_policy*/,
17751  "+08/+09" /*format*/,
17752  1920 /*offset_code (28800/15)*/,
17753  0 /*offset_remainder (28800%15)*/,
17754  0 /*delta_minutes*/,
17755  2011 /*until_year*/,
17756  3 /*until_month*/,
17757  27 /*until_day*/,
17758  480 /*until_time_code (7200/15)*/,
17759  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
17760  },
17761  // 9:00 - +09 2014 Oct 26 2:00s
17762  {
17763  NULL /*zone_policy*/,
17764  "+09" /*format*/,
17765  2160 /*offset_code (32400/15)*/,
17766  0 /*offset_remainder (32400%15)*/,
17767  0 /*delta_minutes*/,
17768  2014 /*until_year*/,
17769  10 /*until_month*/,
17770  26 /*until_day*/,
17771  480 /*until_time_code (7200/15)*/,
17772  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
17773  },
17774  // 8:00 - +08
17775  {
17776  NULL /*zone_policy*/,
17777  "+08" /*format*/,
17778  1920 /*offset_code (28800/15)*/,
17779  0 /*offset_remainder (28800%15)*/,
17780  0 /*delta_minutes*/,
17781  32767 /*until_year*/,
17782  1 /*until_month*/,
17783  1 /*until_day*/,
17784  0 /*until_time_code (0/15)*/,
17785  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17786  },
17787 
17788 };
17789 
17790 static const char kAtcZoneNameAsia_Irkutsk[] = "Asia/Irkutsk";
17791 
17792 const AtcZoneInfo kAtcAllZoneAsia_Irkutsk = {
17793  kAtcZoneNameAsia_Irkutsk /*name*/,
17794  0xdfbf213f /*zone_id*/,
17795  &kAtcAllZoneContext /*zone_context*/,
17796  8 /*num_eras*/,
17797  kAtcZoneEraAsia_Irkutsk /*eras*/,
17798  NULL /*target_info*/,
17799 };
17800 
17801 //---------------------------------------------------------------------------
17802 // Zone name: Asia/Jakarta
17803 // Zone Eras: 9
17804 //---------------------------------------------------------------------------
17805 
17806 static const AtcZoneEra kAtcZoneEraAsia_Jakarta[] = {
17807  // 7:07:12 - LMT 1867 Aug 10
17808  {
17809  NULL /*zone_policy*/,
17810  "LMT" /*format*/,
17811  1708 /*offset_code (25632/15)*/,
17812  12 /*offset_remainder (25632%15)*/,
17813  0 /*delta_minutes*/,
17814  1867 /*until_year*/,
17815  8 /*until_month*/,
17816  10 /*until_day*/,
17817  0 /*until_time_code (0/15)*/,
17818  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17819  },
17820  // 7:07:12 - BMT 1923 Dec 31 16:40u
17821  {
17822  NULL /*zone_policy*/,
17823  "BMT" /*format*/,
17824  1708 /*offset_code (25632/15)*/,
17825  12 /*offset_remainder (25632%15)*/,
17826  0 /*delta_minutes*/,
17827  1923 /*until_year*/,
17828  12 /*until_month*/,
17829  31 /*until_day*/,
17830  4000 /*until_time_code (60000/15)*/,
17831  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
17832  },
17833  // 7:20 - +0720 1932 Nov
17834  {
17835  NULL /*zone_policy*/,
17836  "+0720" /*format*/,
17837  1760 /*offset_code (26400/15)*/,
17838  0 /*offset_remainder (26400%15)*/,
17839  0 /*delta_minutes*/,
17840  1932 /*until_year*/,
17841  11 /*until_month*/,
17842  1 /*until_day*/,
17843  0 /*until_time_code (0/15)*/,
17844  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17845  },
17846  // 7:30 - +0730 1942 Mar 23
17847  {
17848  NULL /*zone_policy*/,
17849  "+0730" /*format*/,
17850  1800 /*offset_code (27000/15)*/,
17851  0 /*offset_remainder (27000%15)*/,
17852  0 /*delta_minutes*/,
17853  1942 /*until_year*/,
17854  3 /*until_month*/,
17855  23 /*until_day*/,
17856  0 /*until_time_code (0/15)*/,
17857  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17858  },
17859  // 9:00 - +09 1945 Sep 23
17860  {
17861  NULL /*zone_policy*/,
17862  "+09" /*format*/,
17863  2160 /*offset_code (32400/15)*/,
17864  0 /*offset_remainder (32400%15)*/,
17865  0 /*delta_minutes*/,
17866  1945 /*until_year*/,
17867  9 /*until_month*/,
17868  23 /*until_day*/,
17869  0 /*until_time_code (0/15)*/,
17870  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17871  },
17872  // 7:30 - +0730 1948 May
17873  {
17874  NULL /*zone_policy*/,
17875  "+0730" /*format*/,
17876  1800 /*offset_code (27000/15)*/,
17877  0 /*offset_remainder (27000%15)*/,
17878  0 /*delta_minutes*/,
17879  1948 /*until_year*/,
17880  5 /*until_month*/,
17881  1 /*until_day*/,
17882  0 /*until_time_code (0/15)*/,
17883  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17884  },
17885  // 8:00 - +08 1950 May
17886  {
17887  NULL /*zone_policy*/,
17888  "+08" /*format*/,
17889  1920 /*offset_code (28800/15)*/,
17890  0 /*offset_remainder (28800%15)*/,
17891  0 /*delta_minutes*/,
17892  1950 /*until_year*/,
17893  5 /*until_month*/,
17894  1 /*until_day*/,
17895  0 /*until_time_code (0/15)*/,
17896  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17897  },
17898  // 7:30 - +0730 1964
17899  {
17900  NULL /*zone_policy*/,
17901  "+0730" /*format*/,
17902  1800 /*offset_code (27000/15)*/,
17903  0 /*offset_remainder (27000%15)*/,
17904  0 /*delta_minutes*/,
17905  1964 /*until_year*/,
17906  1 /*until_month*/,
17907  1 /*until_day*/,
17908  0 /*until_time_code (0/15)*/,
17909  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17910  },
17911  // 7:00 - WIB
17912  {
17913  NULL /*zone_policy*/,
17914  "WIB" /*format*/,
17915  1680 /*offset_code (25200/15)*/,
17916  0 /*offset_remainder (25200%15)*/,
17917  0 /*delta_minutes*/,
17918  32767 /*until_year*/,
17919  1 /*until_month*/,
17920  1 /*until_day*/,
17921  0 /*until_time_code (0/15)*/,
17922  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17923  },
17924 
17925 };
17926 
17927 static const char kAtcZoneNameAsia_Jakarta[] = "Asia/Jakarta";
17928 
17929 const AtcZoneInfo kAtcAllZoneAsia_Jakarta = {
17930  kAtcZoneNameAsia_Jakarta /*name*/,
17931  0x0506ab50 /*zone_id*/,
17932  &kAtcAllZoneContext /*zone_context*/,
17933  9 /*num_eras*/,
17934  kAtcZoneEraAsia_Jakarta /*eras*/,
17935  NULL /*target_info*/,
17936 };
17937 
17938 //---------------------------------------------------------------------------
17939 // Zone name: Asia/Jayapura
17940 // Zone Eras: 4
17941 //---------------------------------------------------------------------------
17942 
17943 static const AtcZoneEra kAtcZoneEraAsia_Jayapura[] = {
17944  // 9:22:48 - LMT 1932 Nov
17945  {
17946  NULL /*zone_policy*/,
17947  "LMT" /*format*/,
17948  2251 /*offset_code (33768/15)*/,
17949  3 /*offset_remainder (33768%15)*/,
17950  0 /*delta_minutes*/,
17951  1932 /*until_year*/,
17952  11 /*until_month*/,
17953  1 /*until_day*/,
17954  0 /*until_time_code (0/15)*/,
17955  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17956  },
17957  // 9:00 - +09 1944 Sep 1
17958  {
17959  NULL /*zone_policy*/,
17960  "+09" /*format*/,
17961  2160 /*offset_code (32400/15)*/,
17962  0 /*offset_remainder (32400%15)*/,
17963  0 /*delta_minutes*/,
17964  1944 /*until_year*/,
17965  9 /*until_month*/,
17966  1 /*until_day*/,
17967  0 /*until_time_code (0/15)*/,
17968  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17969  },
17970  // 9:30 - +0930 1964
17971  {
17972  NULL /*zone_policy*/,
17973  "+0930" /*format*/,
17974  2280 /*offset_code (34200/15)*/,
17975  0 /*offset_remainder (34200%15)*/,
17976  0 /*delta_minutes*/,
17977  1964 /*until_year*/,
17978  1 /*until_month*/,
17979  1 /*until_day*/,
17980  0 /*until_time_code (0/15)*/,
17981  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17982  },
17983  // 9:00 - WIT
17984  {
17985  NULL /*zone_policy*/,
17986  "WIT" /*format*/,
17987  2160 /*offset_code (32400/15)*/,
17988  0 /*offset_remainder (32400%15)*/,
17989  0 /*delta_minutes*/,
17990  32767 /*until_year*/,
17991  1 /*until_month*/,
17992  1 /*until_day*/,
17993  0 /*until_time_code (0/15)*/,
17994  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
17995  },
17996 
17997 };
17998 
17999 static const char kAtcZoneNameAsia_Jayapura[] = "Asia/Jayapura";
18000 
18001 const AtcZoneInfo kAtcAllZoneAsia_Jayapura = {
18002  kAtcZoneNameAsia_Jayapura /*name*/,
18003  0xc6833c2f /*zone_id*/,
18004  &kAtcAllZoneContext /*zone_context*/,
18005  4 /*num_eras*/,
18006  kAtcZoneEraAsia_Jayapura /*eras*/,
18007  NULL /*target_info*/,
18008 };
18009 
18010 //---------------------------------------------------------------------------
18011 // Zone name: Asia/Jerusalem
18012 // Zone Eras: 3
18013 //---------------------------------------------------------------------------
18014 
18015 static const AtcZoneEra kAtcZoneEraAsia_Jerusalem[] = {
18016  // 2:20:54 - LMT 1880
18017  {
18018  NULL /*zone_policy*/,
18019  "LMT" /*format*/,
18020  563 /*offset_code (8454/15)*/,
18021  9 /*offset_remainder (8454%15)*/,
18022  0 /*delta_minutes*/,
18023  1880 /*until_year*/,
18024  1 /*until_month*/,
18025  1 /*until_day*/,
18026  0 /*until_time_code (0/15)*/,
18027  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18028  },
18029  // 2:20:40 - JMT 1918
18030  {
18031  NULL /*zone_policy*/,
18032  "JMT" /*format*/,
18033  562 /*offset_code (8440/15)*/,
18034  10 /*offset_remainder (8440%15)*/,
18035  0 /*delta_minutes*/,
18036  1918 /*until_year*/,
18037  1 /*until_month*/,
18038  1 /*until_day*/,
18039  0 /*until_time_code (0/15)*/,
18040  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18041  },
18042  // 2:00 Zion I%sT
18043  {
18044  &kAtcAllZonePolicyZion /*zone_policy*/,
18045  "I%T" /*format*/,
18046  480 /*offset_code (7200/15)*/,
18047  0 /*offset_remainder (7200%15)*/,
18048  0 /*delta_minutes*/,
18049  32767 /*until_year*/,
18050  1 /*until_month*/,
18051  1 /*until_day*/,
18052  0 /*until_time_code (0/15)*/,
18053  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18054  },
18055 
18056 };
18057 
18058 static const char kAtcZoneNameAsia_Jerusalem[] = "Asia/Jerusalem";
18059 
18060 const AtcZoneInfo kAtcAllZoneAsia_Jerusalem = {
18061  kAtcZoneNameAsia_Jerusalem /*name*/,
18062  0x5becd23a /*zone_id*/,
18063  &kAtcAllZoneContext /*zone_context*/,
18064  3 /*num_eras*/,
18065  kAtcZoneEraAsia_Jerusalem /*eras*/,
18066  NULL /*target_info*/,
18067 };
18068 
18069 //---------------------------------------------------------------------------
18070 // Zone name: Asia/Kabul
18071 // Zone Eras: 3
18072 //---------------------------------------------------------------------------
18073 
18074 static const AtcZoneEra kAtcZoneEraAsia_Kabul[] = {
18075  // 4:36:48 - LMT 1890
18076  {
18077  NULL /*zone_policy*/,
18078  "LMT" /*format*/,
18079  1107 /*offset_code (16608/15)*/,
18080  3 /*offset_remainder (16608%15)*/,
18081  0 /*delta_minutes*/,
18082  1890 /*until_year*/,
18083  1 /*until_month*/,
18084  1 /*until_day*/,
18085  0 /*until_time_code (0/15)*/,
18086  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18087  },
18088  // 4:00 - +04 1945
18089  {
18090  NULL /*zone_policy*/,
18091  "+04" /*format*/,
18092  960 /*offset_code (14400/15)*/,
18093  0 /*offset_remainder (14400%15)*/,
18094  0 /*delta_minutes*/,
18095  1945 /*until_year*/,
18096  1 /*until_month*/,
18097  1 /*until_day*/,
18098  0 /*until_time_code (0/15)*/,
18099  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18100  },
18101  // 4:30 - +0430
18102  {
18103  NULL /*zone_policy*/,
18104  "+0430" /*format*/,
18105  1080 /*offset_code (16200/15)*/,
18106  0 /*offset_remainder (16200%15)*/,
18107  0 /*delta_minutes*/,
18108  32767 /*until_year*/,
18109  1 /*until_month*/,
18110  1 /*until_day*/,
18111  0 /*until_time_code (0/15)*/,
18112  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18113  },
18114 
18115 };
18116 
18117 static const char kAtcZoneNameAsia_Kabul[] = "Asia/Kabul";
18118 
18119 const AtcZoneInfo kAtcAllZoneAsia_Kabul = {
18120  kAtcZoneNameAsia_Kabul /*name*/,
18121  0x153b5601 /*zone_id*/,
18122  &kAtcAllZoneContext /*zone_context*/,
18123  3 /*num_eras*/,
18124  kAtcZoneEraAsia_Kabul /*eras*/,
18125  NULL /*target_info*/,
18126 };
18127 
18128 //---------------------------------------------------------------------------
18129 // Zone name: Asia/Kamchatka
18130 // Zone Eras: 7
18131 //---------------------------------------------------------------------------
18132 
18133 static const AtcZoneEra kAtcZoneEraAsia_Kamchatka[] = {
18134  // 10:34:36 - LMT 1922 Nov 10
18135  {
18136  NULL /*zone_policy*/,
18137  "LMT" /*format*/,
18138  2538 /*offset_code (38076/15)*/,
18139  6 /*offset_remainder (38076%15)*/,
18140  0 /*delta_minutes*/,
18141  1922 /*until_year*/,
18142  11 /*until_month*/,
18143  10 /*until_day*/,
18144  0 /*until_time_code (0/15)*/,
18145  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18146  },
18147  // 11:00 - +11 1930 Jun 21
18148  {
18149  NULL /*zone_policy*/,
18150  "+11" /*format*/,
18151  2640 /*offset_code (39600/15)*/,
18152  0 /*offset_remainder (39600%15)*/,
18153  0 /*delta_minutes*/,
18154  1930 /*until_year*/,
18155  6 /*until_month*/,
18156  21 /*until_day*/,
18157  0 /*until_time_code (0/15)*/,
18158  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18159  },
18160  // 12:00 Russia +12/+13 1991 Mar 31 2:00s
18161  {
18162  &kAtcAllZonePolicyRussia /*zone_policy*/,
18163  "+12/+13" /*format*/,
18164  2880 /*offset_code (43200/15)*/,
18165  0 /*offset_remainder (43200%15)*/,
18166  0 /*delta_minutes*/,
18167  1991 /*until_year*/,
18168  3 /*until_month*/,
18169  31 /*until_day*/,
18170  480 /*until_time_code (7200/15)*/,
18171  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18172  },
18173  // 11:00 Russia +11/+12 1992 Jan 19 2:00s
18174  {
18175  &kAtcAllZonePolicyRussia /*zone_policy*/,
18176  "+11/+12" /*format*/,
18177  2640 /*offset_code (39600/15)*/,
18178  0 /*offset_remainder (39600%15)*/,
18179  0 /*delta_minutes*/,
18180  1992 /*until_year*/,
18181  1 /*until_month*/,
18182  19 /*until_day*/,
18183  480 /*until_time_code (7200/15)*/,
18184  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18185  },
18186  // 12:00 Russia +12/+13 2010 Mar 28 2:00s
18187  {
18188  &kAtcAllZonePolicyRussia /*zone_policy*/,
18189  "+12/+13" /*format*/,
18190  2880 /*offset_code (43200/15)*/,
18191  0 /*offset_remainder (43200%15)*/,
18192  0 /*delta_minutes*/,
18193  2010 /*until_year*/,
18194  3 /*until_month*/,
18195  28 /*until_day*/,
18196  480 /*until_time_code (7200/15)*/,
18197  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18198  },
18199  // 11:00 Russia +11/+12 2011 Mar 27 2:00s
18200  {
18201  &kAtcAllZonePolicyRussia /*zone_policy*/,
18202  "+11/+12" /*format*/,
18203  2640 /*offset_code (39600/15)*/,
18204  0 /*offset_remainder (39600%15)*/,
18205  0 /*delta_minutes*/,
18206  2011 /*until_year*/,
18207  3 /*until_month*/,
18208  27 /*until_day*/,
18209  480 /*until_time_code (7200/15)*/,
18210  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18211  },
18212  // 12:00 - +12
18213  {
18214  NULL /*zone_policy*/,
18215  "+12" /*format*/,
18216  2880 /*offset_code (43200/15)*/,
18217  0 /*offset_remainder (43200%15)*/,
18218  0 /*delta_minutes*/,
18219  32767 /*until_year*/,
18220  1 /*until_month*/,
18221  1 /*until_day*/,
18222  0 /*until_time_code (0/15)*/,
18223  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18224  },
18225 
18226 };
18227 
18228 static const char kAtcZoneNameAsia_Kamchatka[] = "Asia/Kamchatka";
18229 
18230 const AtcZoneInfo kAtcAllZoneAsia_Kamchatka = {
18231  kAtcZoneNameAsia_Kamchatka /*name*/,
18232  0x73baf9d7 /*zone_id*/,
18233  &kAtcAllZoneContext /*zone_context*/,
18234  7 /*num_eras*/,
18235  kAtcZoneEraAsia_Kamchatka /*eras*/,
18236  NULL /*target_info*/,
18237 };
18238 
18239 //---------------------------------------------------------------------------
18240 // Zone name: Asia/Karachi
18241 // Zone Eras: 6
18242 //---------------------------------------------------------------------------
18243 
18244 static const AtcZoneEra kAtcZoneEraAsia_Karachi[] = {
18245  // 4:28:12 - LMT 1907
18246  {
18247  NULL /*zone_policy*/,
18248  "LMT" /*format*/,
18249  1072 /*offset_code (16092/15)*/,
18250  12 /*offset_remainder (16092%15)*/,
18251  0 /*delta_minutes*/,
18252  1907 /*until_year*/,
18253  1 /*until_month*/,
18254  1 /*until_day*/,
18255  0 /*until_time_code (0/15)*/,
18256  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18257  },
18258  // 5:30 - +0530 1942 Sep
18259  {
18260  NULL /*zone_policy*/,
18261  "+0530" /*format*/,
18262  1320 /*offset_code (19800/15)*/,
18263  0 /*offset_remainder (19800%15)*/,
18264  0 /*delta_minutes*/,
18265  1942 /*until_year*/,
18266  9 /*until_month*/,
18267  1 /*until_day*/,
18268  0 /*until_time_code (0/15)*/,
18269  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18270  },
18271  // 5:30 1:00 +0630 1945 Oct 15
18272  {
18273  NULL /*zone_policy*/,
18274  "+0630" /*format*/,
18275  1320 /*offset_code (19800/15)*/,
18276  0 /*offset_remainder (19800%15)*/,
18277  60 /*delta_minutes*/,
18278  1945 /*until_year*/,
18279  10 /*until_month*/,
18280  15 /*until_day*/,
18281  0 /*until_time_code (0/15)*/,
18282  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18283  },
18284  // 5:30 - +0530 1951 Sep 30
18285  {
18286  NULL /*zone_policy*/,
18287  "+0530" /*format*/,
18288  1320 /*offset_code (19800/15)*/,
18289  0 /*offset_remainder (19800%15)*/,
18290  0 /*delta_minutes*/,
18291  1951 /*until_year*/,
18292  9 /*until_month*/,
18293  30 /*until_day*/,
18294  0 /*until_time_code (0/15)*/,
18295  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18296  },
18297  // 5:00 - +05 1971 Mar 26
18298  {
18299  NULL /*zone_policy*/,
18300  "+05" /*format*/,
18301  1200 /*offset_code (18000/15)*/,
18302  0 /*offset_remainder (18000%15)*/,
18303  0 /*delta_minutes*/,
18304  1971 /*until_year*/,
18305  3 /*until_month*/,
18306  26 /*until_day*/,
18307  0 /*until_time_code (0/15)*/,
18308  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18309  },
18310  // 5:00 Pakistan PK%sT
18311  {
18312  &kAtcAllZonePolicyPakistan /*zone_policy*/,
18313  "PK%T" /*format*/,
18314  1200 /*offset_code (18000/15)*/,
18315  0 /*offset_remainder (18000%15)*/,
18316  0 /*delta_minutes*/,
18317  32767 /*until_year*/,
18318  1 /*until_month*/,
18319  1 /*until_day*/,
18320  0 /*until_time_code (0/15)*/,
18321  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18322  },
18323 
18324 };
18325 
18326 static const char kAtcZoneNameAsia_Karachi[] = "Asia/Karachi";
18327 
18328 const AtcZoneInfo kAtcAllZoneAsia_Karachi = {
18329  kAtcZoneNameAsia_Karachi /*name*/,
18330  0x527f5245 /*zone_id*/,
18331  &kAtcAllZoneContext /*zone_context*/,
18332  6 /*num_eras*/,
18333  kAtcZoneEraAsia_Karachi /*eras*/,
18334  NULL /*target_info*/,
18335 };
18336 
18337 //---------------------------------------------------------------------------
18338 // Zone name: Asia/Kathmandu
18339 // Zone Eras: 3
18340 //---------------------------------------------------------------------------
18341 
18342 static const AtcZoneEra kAtcZoneEraAsia_Kathmandu[] = {
18343  // 5:41:16 - LMT 1920
18344  {
18345  NULL /*zone_policy*/,
18346  "LMT" /*format*/,
18347  1365 /*offset_code (20476/15)*/,
18348  1 /*offset_remainder (20476%15)*/,
18349  0 /*delta_minutes*/,
18350  1920 /*until_year*/,
18351  1 /*until_month*/,
18352  1 /*until_day*/,
18353  0 /*until_time_code (0/15)*/,
18354  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18355  },
18356  // 5:30 - +0530 1986
18357  {
18358  NULL /*zone_policy*/,
18359  "+0530" /*format*/,
18360  1320 /*offset_code (19800/15)*/,
18361  0 /*offset_remainder (19800%15)*/,
18362  0 /*delta_minutes*/,
18363  1986 /*until_year*/,
18364  1 /*until_month*/,
18365  1 /*until_day*/,
18366  0 /*until_time_code (0/15)*/,
18367  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18368  },
18369  // 5:45 - +0545
18370  {
18371  NULL /*zone_policy*/,
18372  "+0545" /*format*/,
18373  1380 /*offset_code (20700/15)*/,
18374  0 /*offset_remainder (20700%15)*/,
18375  0 /*delta_minutes*/,
18376  32767 /*until_year*/,
18377  1 /*until_month*/,
18378  1 /*until_day*/,
18379  0 /*until_time_code (0/15)*/,
18380  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18381  },
18382 
18383 };
18384 
18385 static const char kAtcZoneNameAsia_Kathmandu[] = "Asia/Kathmandu";
18386 
18387 const AtcZoneInfo kAtcAllZoneAsia_Kathmandu = {
18388  kAtcZoneNameAsia_Kathmandu /*name*/,
18389  0x9a96ce6f /*zone_id*/,
18390  &kAtcAllZoneContext /*zone_context*/,
18391  3 /*num_eras*/,
18392  kAtcZoneEraAsia_Kathmandu /*eras*/,
18393  NULL /*target_info*/,
18394 };
18395 
18396 //---------------------------------------------------------------------------
18397 // Zone name: Asia/Khandyga
18398 // Zone Eras: 9
18399 //---------------------------------------------------------------------------
18400 
18401 static const AtcZoneEra kAtcZoneEraAsia_Khandyga[] = {
18402  // 9:02:13 - LMT 1919 Dec 15
18403  {
18404  NULL /*zone_policy*/,
18405  "LMT" /*format*/,
18406  2168 /*offset_code (32533/15)*/,
18407  13 /*offset_remainder (32533%15)*/,
18408  0 /*delta_minutes*/,
18409  1919 /*until_year*/,
18410  12 /*until_month*/,
18411  15 /*until_day*/,
18412  0 /*until_time_code (0/15)*/,
18413  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18414  },
18415  // 8:00 - +08 1930 Jun 21
18416  {
18417  NULL /*zone_policy*/,
18418  "+08" /*format*/,
18419  1920 /*offset_code (28800/15)*/,
18420  0 /*offset_remainder (28800%15)*/,
18421  0 /*delta_minutes*/,
18422  1930 /*until_year*/,
18423  6 /*until_month*/,
18424  21 /*until_day*/,
18425  0 /*until_time_code (0/15)*/,
18426  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18427  },
18428  // 9:00 Russia +09/+10 1991 Mar 31 2:00s
18429  {
18430  &kAtcAllZonePolicyRussia /*zone_policy*/,
18431  "+09/+10" /*format*/,
18432  2160 /*offset_code (32400/15)*/,
18433  0 /*offset_remainder (32400%15)*/,
18434  0 /*delta_minutes*/,
18435  1991 /*until_year*/,
18436  3 /*until_month*/,
18437  31 /*until_day*/,
18438  480 /*until_time_code (7200/15)*/,
18439  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18440  },
18441  // 8:00 Russia +08/+09 1992 Jan 19 2:00s
18442  {
18443  &kAtcAllZonePolicyRussia /*zone_policy*/,
18444  "+08/+09" /*format*/,
18445  1920 /*offset_code (28800/15)*/,
18446  0 /*offset_remainder (28800%15)*/,
18447  0 /*delta_minutes*/,
18448  1992 /*until_year*/,
18449  1 /*until_month*/,
18450  19 /*until_day*/,
18451  480 /*until_time_code (7200/15)*/,
18452  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18453  },
18454  // 9:00 Russia +09/+10 2004
18455  {
18456  &kAtcAllZonePolicyRussia /*zone_policy*/,
18457  "+09/+10" /*format*/,
18458  2160 /*offset_code (32400/15)*/,
18459  0 /*offset_remainder (32400%15)*/,
18460  0 /*delta_minutes*/,
18461  2004 /*until_year*/,
18462  1 /*until_month*/,
18463  1 /*until_day*/,
18464  0 /*until_time_code (0/15)*/,
18465  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18466  },
18467  // 10:00 Russia +10/+11 2011 Mar 27 2:00s
18468  {
18469  &kAtcAllZonePolicyRussia /*zone_policy*/,
18470  "+10/+11" /*format*/,
18471  2400 /*offset_code (36000/15)*/,
18472  0 /*offset_remainder (36000%15)*/,
18473  0 /*delta_minutes*/,
18474  2011 /*until_year*/,
18475  3 /*until_month*/,
18476  27 /*until_day*/,
18477  480 /*until_time_code (7200/15)*/,
18478  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18479  },
18480  // 11:00 - +11 2011 Sep 13 0:00s
18481  {
18482  NULL /*zone_policy*/,
18483  "+11" /*format*/,
18484  2640 /*offset_code (39600/15)*/,
18485  0 /*offset_remainder (39600%15)*/,
18486  0 /*delta_minutes*/,
18487  2011 /*until_year*/,
18488  9 /*until_month*/,
18489  13 /*until_day*/,
18490  0 /*until_time_code (0/15)*/,
18491  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18492  },
18493  // 10:00 - +10 2014 Oct 26 2:00s
18494  {
18495  NULL /*zone_policy*/,
18496  "+10" /*format*/,
18497  2400 /*offset_code (36000/15)*/,
18498  0 /*offset_remainder (36000%15)*/,
18499  0 /*delta_minutes*/,
18500  2014 /*until_year*/,
18501  10 /*until_month*/,
18502  26 /*until_day*/,
18503  480 /*until_time_code (7200/15)*/,
18504  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18505  },
18506  // 9:00 - +09
18507  {
18508  NULL /*zone_policy*/,
18509  "+09" /*format*/,
18510  2160 /*offset_code (32400/15)*/,
18511  0 /*offset_remainder (32400%15)*/,
18512  0 /*delta_minutes*/,
18513  32767 /*until_year*/,
18514  1 /*until_month*/,
18515  1 /*until_day*/,
18516  0 /*until_time_code (0/15)*/,
18517  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18518  },
18519 
18520 };
18521 
18522 static const char kAtcZoneNameAsia_Khandyga[] = "Asia/Khandyga";
18523 
18524 const AtcZoneInfo kAtcAllZoneAsia_Khandyga = {
18525  kAtcZoneNameAsia_Khandyga /*name*/,
18526  0x9685a4d9 /*zone_id*/,
18527  &kAtcAllZoneContext /*zone_context*/,
18528  9 /*num_eras*/,
18529  kAtcZoneEraAsia_Khandyga /*eras*/,
18530  NULL /*target_info*/,
18531 };
18532 
18533 //---------------------------------------------------------------------------
18534 // Zone name: Asia/Kolkata
18535 // Zone Eras: 8
18536 //---------------------------------------------------------------------------
18537 
18538 static const AtcZoneEra kAtcZoneEraAsia_Kolkata[] = {
18539  // 5:53:28 - LMT 1854 Jun 28
18540  {
18541  NULL /*zone_policy*/,
18542  "LMT" /*format*/,
18543  1413 /*offset_code (21208/15)*/,
18544  13 /*offset_remainder (21208%15)*/,
18545  0 /*delta_minutes*/,
18546  1854 /*until_year*/,
18547  6 /*until_month*/,
18548  28 /*until_day*/,
18549  0 /*until_time_code (0/15)*/,
18550  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18551  },
18552  // 5:53:20 - HMT 1870
18553  {
18554  NULL /*zone_policy*/,
18555  "HMT" /*format*/,
18556  1413 /*offset_code (21200/15)*/,
18557  5 /*offset_remainder (21200%15)*/,
18558  0 /*delta_minutes*/,
18559  1870 /*until_year*/,
18560  1 /*until_month*/,
18561  1 /*until_day*/,
18562  0 /*until_time_code (0/15)*/,
18563  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18564  },
18565  // 5:21:10 - MMT 1906 Jan 1
18566  {
18567  NULL /*zone_policy*/,
18568  "MMT" /*format*/,
18569  1284 /*offset_code (19270/15)*/,
18570  10 /*offset_remainder (19270%15)*/,
18571  0 /*delta_minutes*/,
18572  1906 /*until_year*/,
18573  1 /*until_month*/,
18574  1 /*until_day*/,
18575  0 /*until_time_code (0/15)*/,
18576  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18577  },
18578  // 5:30 - IST 1941 Oct
18579  {
18580  NULL /*zone_policy*/,
18581  "IST" /*format*/,
18582  1320 /*offset_code (19800/15)*/,
18583  0 /*offset_remainder (19800%15)*/,
18584  0 /*delta_minutes*/,
18585  1941 /*until_year*/,
18586  10 /*until_month*/,
18587  1 /*until_day*/,
18588  0 /*until_time_code (0/15)*/,
18589  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18590  },
18591  // 5:30 1:00 +0630 1942 May 15
18592  {
18593  NULL /*zone_policy*/,
18594  "+0630" /*format*/,
18595  1320 /*offset_code (19800/15)*/,
18596  0 /*offset_remainder (19800%15)*/,
18597  60 /*delta_minutes*/,
18598  1942 /*until_year*/,
18599  5 /*until_month*/,
18600  15 /*until_day*/,
18601  0 /*until_time_code (0/15)*/,
18602  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18603  },
18604  // 5:30 - IST 1942 Sep
18605  {
18606  NULL /*zone_policy*/,
18607  "IST" /*format*/,
18608  1320 /*offset_code (19800/15)*/,
18609  0 /*offset_remainder (19800%15)*/,
18610  0 /*delta_minutes*/,
18611  1942 /*until_year*/,
18612  9 /*until_month*/,
18613  1 /*until_day*/,
18614  0 /*until_time_code (0/15)*/,
18615  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18616  },
18617  // 5:30 1:00 +0630 1945 Oct 15
18618  {
18619  NULL /*zone_policy*/,
18620  "+0630" /*format*/,
18621  1320 /*offset_code (19800/15)*/,
18622  0 /*offset_remainder (19800%15)*/,
18623  60 /*delta_minutes*/,
18624  1945 /*until_year*/,
18625  10 /*until_month*/,
18626  15 /*until_day*/,
18627  0 /*until_time_code (0/15)*/,
18628  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18629  },
18630  // 5:30 - IST
18631  {
18632  NULL /*zone_policy*/,
18633  "IST" /*format*/,
18634  1320 /*offset_code (19800/15)*/,
18635  0 /*offset_remainder (19800%15)*/,
18636  0 /*delta_minutes*/,
18637  32767 /*until_year*/,
18638  1 /*until_month*/,
18639  1 /*until_day*/,
18640  0 /*until_time_code (0/15)*/,
18641  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18642  },
18643 
18644 };
18645 
18646 static const char kAtcZoneNameAsia_Kolkata[] = "Asia/Kolkata";
18647 
18648 const AtcZoneInfo kAtcAllZoneAsia_Kolkata = {
18649  kAtcZoneNameAsia_Kolkata /*name*/,
18650  0x72c06cd9 /*zone_id*/,
18651  &kAtcAllZoneContext /*zone_context*/,
18652  8 /*num_eras*/,
18653  kAtcZoneEraAsia_Kolkata /*eras*/,
18654  NULL /*target_info*/,
18655 };
18656 
18657 //---------------------------------------------------------------------------
18658 // Zone name: Asia/Krasnoyarsk
18659 // Zone Eras: 7
18660 //---------------------------------------------------------------------------
18661 
18662 static const AtcZoneEra kAtcZoneEraAsia_Krasnoyarsk[] = {
18663  // 6:11:26 - LMT 1920 Jan 6
18664  {
18665  NULL /*zone_policy*/,
18666  "LMT" /*format*/,
18667  1485 /*offset_code (22286/15)*/,
18668  11 /*offset_remainder (22286%15)*/,
18669  0 /*delta_minutes*/,
18670  1920 /*until_year*/,
18671  1 /*until_month*/,
18672  6 /*until_day*/,
18673  0 /*until_time_code (0/15)*/,
18674  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18675  },
18676  // 6:00 - +06 1930 Jun 21
18677  {
18678  NULL /*zone_policy*/,
18679  "+06" /*format*/,
18680  1440 /*offset_code (21600/15)*/,
18681  0 /*offset_remainder (21600%15)*/,
18682  0 /*delta_minutes*/,
18683  1930 /*until_year*/,
18684  6 /*until_month*/,
18685  21 /*until_day*/,
18686  0 /*until_time_code (0/15)*/,
18687  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18688  },
18689  // 7:00 Russia +07/+08 1991 Mar 31 2:00s
18690  {
18691  &kAtcAllZonePolicyRussia /*zone_policy*/,
18692  "+07/+08" /*format*/,
18693  1680 /*offset_code (25200/15)*/,
18694  0 /*offset_remainder (25200%15)*/,
18695  0 /*delta_minutes*/,
18696  1991 /*until_year*/,
18697  3 /*until_month*/,
18698  31 /*until_day*/,
18699  480 /*until_time_code (7200/15)*/,
18700  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18701  },
18702  // 6:00 Russia +06/+07 1992 Jan 19 2:00s
18703  {
18704  &kAtcAllZonePolicyRussia /*zone_policy*/,
18705  "+06/+07" /*format*/,
18706  1440 /*offset_code (21600/15)*/,
18707  0 /*offset_remainder (21600%15)*/,
18708  0 /*delta_minutes*/,
18709  1992 /*until_year*/,
18710  1 /*until_month*/,
18711  19 /*until_day*/,
18712  480 /*until_time_code (7200/15)*/,
18713  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18714  },
18715  // 7:00 Russia +07/+08 2011 Mar 27 2:00s
18716  {
18717  &kAtcAllZonePolicyRussia /*zone_policy*/,
18718  "+07/+08" /*format*/,
18719  1680 /*offset_code (25200/15)*/,
18720  0 /*offset_remainder (25200%15)*/,
18721  0 /*delta_minutes*/,
18722  2011 /*until_year*/,
18723  3 /*until_month*/,
18724  27 /*until_day*/,
18725  480 /*until_time_code (7200/15)*/,
18726  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18727  },
18728  // 8:00 - +08 2014 Oct 26 2:00s
18729  {
18730  NULL /*zone_policy*/,
18731  "+08" /*format*/,
18732  1920 /*offset_code (28800/15)*/,
18733  0 /*offset_remainder (28800%15)*/,
18734  0 /*delta_minutes*/,
18735  2014 /*until_year*/,
18736  10 /*until_month*/,
18737  26 /*until_day*/,
18738  480 /*until_time_code (7200/15)*/,
18739  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18740  },
18741  // 7:00 - +07
18742  {
18743  NULL /*zone_policy*/,
18744  "+07" /*format*/,
18745  1680 /*offset_code (25200/15)*/,
18746  0 /*offset_remainder (25200%15)*/,
18747  0 /*delta_minutes*/,
18748  32767 /*until_year*/,
18749  1 /*until_month*/,
18750  1 /*until_day*/,
18751  0 /*until_time_code (0/15)*/,
18752  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18753  },
18754 
18755 };
18756 
18757 static const char kAtcZoneNameAsia_Krasnoyarsk[] = "Asia/Krasnoyarsk";
18758 
18759 const AtcZoneInfo kAtcAllZoneAsia_Krasnoyarsk = {
18760  kAtcZoneNameAsia_Krasnoyarsk /*name*/,
18761  0xd0376c6a /*zone_id*/,
18762  &kAtcAllZoneContext /*zone_context*/,
18763  7 /*num_eras*/,
18764  kAtcZoneEraAsia_Krasnoyarsk /*eras*/,
18765  NULL /*target_info*/,
18766 };
18767 
18768 //---------------------------------------------------------------------------
18769 // Zone name: Asia/Kuching
18770 // Zone Eras: 5
18771 //---------------------------------------------------------------------------
18772 
18773 static const AtcZoneEra kAtcZoneEraAsia_Kuching[] = {
18774  // 7:21:20 - LMT 1926 Mar
18775  {
18776  NULL /*zone_policy*/,
18777  "LMT" /*format*/,
18778  1765 /*offset_code (26480/15)*/,
18779  5 /*offset_remainder (26480%15)*/,
18780  0 /*delta_minutes*/,
18781  1926 /*until_year*/,
18782  3 /*until_month*/,
18783  1 /*until_day*/,
18784  0 /*until_time_code (0/15)*/,
18785  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18786  },
18787  // 7:30 - +0730 1933
18788  {
18789  NULL /*zone_policy*/,
18790  "+0730" /*format*/,
18791  1800 /*offset_code (27000/15)*/,
18792  0 /*offset_remainder (27000%15)*/,
18793  0 /*delta_minutes*/,
18794  1933 /*until_year*/,
18795  1 /*until_month*/,
18796  1 /*until_day*/,
18797  0 /*until_time_code (0/15)*/,
18798  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18799  },
18800  // 8:00 NBorneo +08/+0820 1942 Feb 16
18801  {
18802  &kAtcAllZonePolicyNBorneo /*zone_policy*/,
18803  "+08/+0820" /*format*/,
18804  1920 /*offset_code (28800/15)*/,
18805  0 /*offset_remainder (28800%15)*/,
18806  0 /*delta_minutes*/,
18807  1942 /*until_year*/,
18808  2 /*until_month*/,
18809  16 /*until_day*/,
18810  0 /*until_time_code (0/15)*/,
18811  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18812  },
18813  // 9:00 - +09 1945 Sep 12
18814  {
18815  NULL /*zone_policy*/,
18816  "+09" /*format*/,
18817  2160 /*offset_code (32400/15)*/,
18818  0 /*offset_remainder (32400%15)*/,
18819  0 /*delta_minutes*/,
18820  1945 /*until_year*/,
18821  9 /*until_month*/,
18822  12 /*until_day*/,
18823  0 /*until_time_code (0/15)*/,
18824  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18825  },
18826  // 8:00 - +08
18827  {
18828  NULL /*zone_policy*/,
18829  "+08" /*format*/,
18830  1920 /*offset_code (28800/15)*/,
18831  0 /*offset_remainder (28800%15)*/,
18832  0 /*delta_minutes*/,
18833  32767 /*until_year*/,
18834  1 /*until_month*/,
18835  1 /*until_day*/,
18836  0 /*until_time_code (0/15)*/,
18837  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18838  },
18839 
18840 };
18841 
18842 static const char kAtcZoneNameAsia_Kuching[] = "Asia/Kuching";
18843 
18844 const AtcZoneInfo kAtcAllZoneAsia_Kuching = {
18845  kAtcZoneNameAsia_Kuching /*name*/,
18846  0x801b003b /*zone_id*/,
18847  &kAtcAllZoneContext /*zone_context*/,
18848  5 /*num_eras*/,
18849  kAtcZoneEraAsia_Kuching /*eras*/,
18850  NULL /*target_info*/,
18851 };
18852 
18853 //---------------------------------------------------------------------------
18854 // Zone name: Asia/Macau
18855 // Zone Eras: 4
18856 //---------------------------------------------------------------------------
18857 
18858 static const AtcZoneEra kAtcZoneEraAsia_Macau[] = {
18859  // 7:34:10 - LMT 1904 Oct 30
18860  {
18861  NULL /*zone_policy*/,
18862  "LMT" /*format*/,
18863  1816 /*offset_code (27250/15)*/,
18864  10 /*offset_remainder (27250%15)*/,
18865  0 /*delta_minutes*/,
18866  1904 /*until_year*/,
18867  10 /*until_month*/,
18868  30 /*until_day*/,
18869  0 /*until_time_code (0/15)*/,
18870  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18871  },
18872  // 8:00 - CST 1941 Dec 21 23:00
18873  {
18874  NULL /*zone_policy*/,
18875  "CST" /*format*/,
18876  1920 /*offset_code (28800/15)*/,
18877  0 /*offset_remainder (28800%15)*/,
18878  0 /*delta_minutes*/,
18879  1941 /*until_year*/,
18880  12 /*until_month*/,
18881  21 /*until_day*/,
18882  5520 /*until_time_code (82800/15)*/,
18883  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18884  },
18885  // 9:00 Macau +09/+10 1945 Sep 30 24:00
18886  {
18887  &kAtcAllZonePolicyMacau /*zone_policy*/,
18888  "+09/+10" /*format*/,
18889  2160 /*offset_code (32400/15)*/,
18890  0 /*offset_remainder (32400%15)*/,
18891  0 /*delta_minutes*/,
18892  1945 /*until_year*/,
18893  9 /*until_month*/,
18894  30 /*until_day*/,
18895  5760 /*until_time_code (86400/15)*/,
18896  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18897  },
18898  // 8:00 Macau C%sT
18899  {
18900  &kAtcAllZonePolicyMacau /*zone_policy*/,
18901  "C%T" /*format*/,
18902  1920 /*offset_code (28800/15)*/,
18903  0 /*offset_remainder (28800%15)*/,
18904  0 /*delta_minutes*/,
18905  32767 /*until_year*/,
18906  1 /*until_month*/,
18907  1 /*until_day*/,
18908  0 /*until_time_code (0/15)*/,
18909  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18910  },
18911 
18912 };
18913 
18914 static const char kAtcZoneNameAsia_Macau[] = "Asia/Macau";
18915 
18916 const AtcZoneInfo kAtcAllZoneAsia_Macau = {
18917  kAtcZoneNameAsia_Macau /*name*/,
18918  0x155f88b9 /*zone_id*/,
18919  &kAtcAllZoneContext /*zone_context*/,
18920  4 /*num_eras*/,
18921  kAtcZoneEraAsia_Macau /*eras*/,
18922  NULL /*target_info*/,
18923 };
18924 
18925 //---------------------------------------------------------------------------
18926 // Zone name: Asia/Magadan
18927 // Zone Eras: 8
18928 //---------------------------------------------------------------------------
18929 
18930 static const AtcZoneEra kAtcZoneEraAsia_Magadan[] = {
18931  // 10:03:12 - LMT 1924 May 2
18932  {
18933  NULL /*zone_policy*/,
18934  "LMT" /*format*/,
18935  2412 /*offset_code (36192/15)*/,
18936  12 /*offset_remainder (36192%15)*/,
18937  0 /*delta_minutes*/,
18938  1924 /*until_year*/,
18939  5 /*until_month*/,
18940  2 /*until_day*/,
18941  0 /*until_time_code (0/15)*/,
18942  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18943  },
18944  // 10:00 - +10 1930 Jun 21
18945  {
18946  NULL /*zone_policy*/,
18947  "+10" /*format*/,
18948  2400 /*offset_code (36000/15)*/,
18949  0 /*offset_remainder (36000%15)*/,
18950  0 /*delta_minutes*/,
18951  1930 /*until_year*/,
18952  6 /*until_month*/,
18953  21 /*until_day*/,
18954  0 /*until_time_code (0/15)*/,
18955  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
18956  },
18957  // 11:00 Russia +11/+12 1991 Mar 31 2:00s
18958  {
18959  &kAtcAllZonePolicyRussia /*zone_policy*/,
18960  "+11/+12" /*format*/,
18961  2640 /*offset_code (39600/15)*/,
18962  0 /*offset_remainder (39600%15)*/,
18963  0 /*delta_minutes*/,
18964  1991 /*until_year*/,
18965  3 /*until_month*/,
18966  31 /*until_day*/,
18967  480 /*until_time_code (7200/15)*/,
18968  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18969  },
18970  // 10:00 Russia +10/+11 1992 Jan 19 2:00s
18971  {
18972  &kAtcAllZonePolicyRussia /*zone_policy*/,
18973  "+10/+11" /*format*/,
18974  2400 /*offset_code (36000/15)*/,
18975  0 /*offset_remainder (36000%15)*/,
18976  0 /*delta_minutes*/,
18977  1992 /*until_year*/,
18978  1 /*until_month*/,
18979  19 /*until_day*/,
18980  480 /*until_time_code (7200/15)*/,
18981  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18982  },
18983  // 11:00 Russia +11/+12 2011 Mar 27 2:00s
18984  {
18985  &kAtcAllZonePolicyRussia /*zone_policy*/,
18986  "+11/+12" /*format*/,
18987  2640 /*offset_code (39600/15)*/,
18988  0 /*offset_remainder (39600%15)*/,
18989  0 /*delta_minutes*/,
18990  2011 /*until_year*/,
18991  3 /*until_month*/,
18992  27 /*until_day*/,
18993  480 /*until_time_code (7200/15)*/,
18994  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
18995  },
18996  // 12:00 - +12 2014 Oct 26 2:00s
18997  {
18998  NULL /*zone_policy*/,
18999  "+12" /*format*/,
19000  2880 /*offset_code (43200/15)*/,
19001  0 /*offset_remainder (43200%15)*/,
19002  0 /*delta_minutes*/,
19003  2014 /*until_year*/,
19004  10 /*until_month*/,
19005  26 /*until_day*/,
19006  480 /*until_time_code (7200/15)*/,
19007  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19008  },
19009  // 10:00 - +10 2016 Apr 24 2:00s
19010  {
19011  NULL /*zone_policy*/,
19012  "+10" /*format*/,
19013  2400 /*offset_code (36000/15)*/,
19014  0 /*offset_remainder (36000%15)*/,
19015  0 /*delta_minutes*/,
19016  2016 /*until_year*/,
19017  4 /*until_month*/,
19018  24 /*until_day*/,
19019  480 /*until_time_code (7200/15)*/,
19020  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19021  },
19022  // 11:00 - +11
19023  {
19024  NULL /*zone_policy*/,
19025  "+11" /*format*/,
19026  2640 /*offset_code (39600/15)*/,
19027  0 /*offset_remainder (39600%15)*/,
19028  0 /*delta_minutes*/,
19029  32767 /*until_year*/,
19030  1 /*until_month*/,
19031  1 /*until_day*/,
19032  0 /*until_time_code (0/15)*/,
19033  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19034  },
19035 
19036 };
19037 
19038 static const char kAtcZoneNameAsia_Magadan[] = "Asia/Magadan";
19039 
19040 const AtcZoneInfo kAtcAllZoneAsia_Magadan = {
19041  kAtcZoneNameAsia_Magadan /*name*/,
19042  0xebacc19b /*zone_id*/,
19043  &kAtcAllZoneContext /*zone_context*/,
19044  8 /*num_eras*/,
19045  kAtcZoneEraAsia_Magadan /*eras*/,
19046  NULL /*target_info*/,
19047 };
19048 
19049 //---------------------------------------------------------------------------
19050 // Zone name: Asia/Makassar
19051 // Zone Eras: 5
19052 //---------------------------------------------------------------------------
19053 
19054 static const AtcZoneEra kAtcZoneEraAsia_Makassar[] = {
19055  // 7:57:36 - LMT 1920
19056  {
19057  NULL /*zone_policy*/,
19058  "LMT" /*format*/,
19059  1910 /*offset_code (28656/15)*/,
19060  6 /*offset_remainder (28656%15)*/,
19061  0 /*delta_minutes*/,
19062  1920 /*until_year*/,
19063  1 /*until_month*/,
19064  1 /*until_day*/,
19065  0 /*until_time_code (0/15)*/,
19066  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19067  },
19068  // 7:57:36 - MMT 1932 Nov
19069  {
19070  NULL /*zone_policy*/,
19071  "MMT" /*format*/,
19072  1910 /*offset_code (28656/15)*/,
19073  6 /*offset_remainder (28656%15)*/,
19074  0 /*delta_minutes*/,
19075  1932 /*until_year*/,
19076  11 /*until_month*/,
19077  1 /*until_day*/,
19078  0 /*until_time_code (0/15)*/,
19079  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19080  },
19081  // 8:00 - +08 1942 Feb 9
19082  {
19083  NULL /*zone_policy*/,
19084  "+08" /*format*/,
19085  1920 /*offset_code (28800/15)*/,
19086  0 /*offset_remainder (28800%15)*/,
19087  0 /*delta_minutes*/,
19088  1942 /*until_year*/,
19089  2 /*until_month*/,
19090  9 /*until_day*/,
19091  0 /*until_time_code (0/15)*/,
19092  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19093  },
19094  // 9:00 - +09 1945 Sep 23
19095  {
19096  NULL /*zone_policy*/,
19097  "+09" /*format*/,
19098  2160 /*offset_code (32400/15)*/,
19099  0 /*offset_remainder (32400%15)*/,
19100  0 /*delta_minutes*/,
19101  1945 /*until_year*/,
19102  9 /*until_month*/,
19103  23 /*until_day*/,
19104  0 /*until_time_code (0/15)*/,
19105  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19106  },
19107  // 8:00 - WITA
19108  {
19109  NULL /*zone_policy*/,
19110  "WITA" /*format*/,
19111  1920 /*offset_code (28800/15)*/,
19112  0 /*offset_remainder (28800%15)*/,
19113  0 /*delta_minutes*/,
19114  32767 /*until_year*/,
19115  1 /*until_month*/,
19116  1 /*until_day*/,
19117  0 /*until_time_code (0/15)*/,
19118  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19119  },
19120 
19121 };
19122 
19123 static const char kAtcZoneNameAsia_Makassar[] = "Asia/Makassar";
19124 
19125 const AtcZoneInfo kAtcAllZoneAsia_Makassar = {
19126  kAtcZoneNameAsia_Makassar /*name*/,
19127  0x6aa21c85 /*zone_id*/,
19128  &kAtcAllZoneContext /*zone_context*/,
19129  5 /*num_eras*/,
19130  kAtcZoneEraAsia_Makassar /*eras*/,
19131  NULL /*target_info*/,
19132 };
19133 
19134 //---------------------------------------------------------------------------
19135 // Zone name: Asia/Manila
19136 // Zone Eras: 5
19137 //---------------------------------------------------------------------------
19138 
19139 static const AtcZoneEra kAtcZoneEraAsia_Manila[] = {
19140  // -15:56:00 - LMT 1844 Dec 31
19141  {
19142  NULL /*zone_policy*/,
19143  "LMT" /*format*/,
19144  -3824 /*offset_code (-57360/15)*/,
19145  0 /*offset_remainder (-57360%15)*/,
19146  0 /*delta_minutes*/,
19147  1844 /*until_year*/,
19148  12 /*until_month*/,
19149  31 /*until_day*/,
19150  0 /*until_time_code (0/15)*/,
19151  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19152  },
19153  // 8:04:00 - LMT 1899 May 11
19154  {
19155  NULL /*zone_policy*/,
19156  "LMT" /*format*/,
19157  1936 /*offset_code (29040/15)*/,
19158  0 /*offset_remainder (29040%15)*/,
19159  0 /*delta_minutes*/,
19160  1899 /*until_year*/,
19161  5 /*until_month*/,
19162  11 /*until_day*/,
19163  0 /*until_time_code (0/15)*/,
19164  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19165  },
19166  // 8:00 Phil P%sT 1942 May
19167  {
19168  &kAtcAllZonePolicyPhil /*zone_policy*/,
19169  "P%T" /*format*/,
19170  1920 /*offset_code (28800/15)*/,
19171  0 /*offset_remainder (28800%15)*/,
19172  0 /*delta_minutes*/,
19173  1942 /*until_year*/,
19174  5 /*until_month*/,
19175  1 /*until_day*/,
19176  0 /*until_time_code (0/15)*/,
19177  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19178  },
19179  // 9:00 - JST 1944 Nov
19180  {
19181  NULL /*zone_policy*/,
19182  "JST" /*format*/,
19183  2160 /*offset_code (32400/15)*/,
19184  0 /*offset_remainder (32400%15)*/,
19185  0 /*delta_minutes*/,
19186  1944 /*until_year*/,
19187  11 /*until_month*/,
19188  1 /*until_day*/,
19189  0 /*until_time_code (0/15)*/,
19190  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19191  },
19192  // 8:00 Phil P%sT
19193  {
19194  &kAtcAllZonePolicyPhil /*zone_policy*/,
19195  "P%T" /*format*/,
19196  1920 /*offset_code (28800/15)*/,
19197  0 /*offset_remainder (28800%15)*/,
19198  0 /*delta_minutes*/,
19199  32767 /*until_year*/,
19200  1 /*until_month*/,
19201  1 /*until_day*/,
19202  0 /*until_time_code (0/15)*/,
19203  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19204  },
19205 
19206 };
19207 
19208 static const char kAtcZoneNameAsia_Manila[] = "Asia/Manila";
19209 
19210 const AtcZoneInfo kAtcAllZoneAsia_Manila = {
19211  kAtcZoneNameAsia_Manila /*name*/,
19212  0xc156c944 /*zone_id*/,
19213  &kAtcAllZoneContext /*zone_context*/,
19214  5 /*num_eras*/,
19215  kAtcZoneEraAsia_Manila /*eras*/,
19216  NULL /*target_info*/,
19217 };
19218 
19219 //---------------------------------------------------------------------------
19220 // Zone name: Asia/Nicosia
19221 // Zone Eras: 3
19222 //---------------------------------------------------------------------------
19223 
19224 static const AtcZoneEra kAtcZoneEraAsia_Nicosia[] = {
19225  // 2:13:28 - LMT 1921 Nov 14
19226  {
19227  NULL /*zone_policy*/,
19228  "LMT" /*format*/,
19229  533 /*offset_code (8008/15)*/,
19230  13 /*offset_remainder (8008%15)*/,
19231  0 /*delta_minutes*/,
19232  1921 /*until_year*/,
19233  11 /*until_month*/,
19234  14 /*until_day*/,
19235  0 /*until_time_code (0/15)*/,
19236  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19237  },
19238  // 2:00 Cyprus EE%sT 1998 Sep
19239  {
19240  &kAtcAllZonePolicyCyprus /*zone_policy*/,
19241  "EE%T" /*format*/,
19242  480 /*offset_code (7200/15)*/,
19243  0 /*offset_remainder (7200%15)*/,
19244  0 /*delta_minutes*/,
19245  1998 /*until_year*/,
19246  9 /*until_month*/,
19247  1 /*until_day*/,
19248  0 /*until_time_code (0/15)*/,
19249  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19250  },
19251  // 2:00 EUAsia EE%sT
19252  {
19253  &kAtcAllZonePolicyEUAsia /*zone_policy*/,
19254  "EE%T" /*format*/,
19255  480 /*offset_code (7200/15)*/,
19256  0 /*offset_remainder (7200%15)*/,
19257  0 /*delta_minutes*/,
19258  32767 /*until_year*/,
19259  1 /*until_month*/,
19260  1 /*until_day*/,
19261  0 /*until_time_code (0/15)*/,
19262  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19263  },
19264 
19265 };
19266 
19267 static const char kAtcZoneNameAsia_Nicosia[] = "Asia/Nicosia";
19268 
19269 const AtcZoneInfo kAtcAllZoneAsia_Nicosia = {
19270  kAtcZoneNameAsia_Nicosia /*name*/,
19271  0x4b0fcf78 /*zone_id*/,
19272  &kAtcAllZoneContext /*zone_context*/,
19273  3 /*num_eras*/,
19274  kAtcZoneEraAsia_Nicosia /*eras*/,
19275  NULL /*target_info*/,
19276 };
19277 
19278 //---------------------------------------------------------------------------
19279 // Zone name: Asia/Novokuznetsk
19280 // Zone Eras: 7
19281 //---------------------------------------------------------------------------
19282 
19283 static const AtcZoneEra kAtcZoneEraAsia_Novokuznetsk[] = {
19284  // 5:48:48 - LMT 1924 May 1
19285  {
19286  NULL /*zone_policy*/,
19287  "LMT" /*format*/,
19288  1395 /*offset_code (20928/15)*/,
19289  3 /*offset_remainder (20928%15)*/,
19290  0 /*delta_minutes*/,
19291  1924 /*until_year*/,
19292  5 /*until_month*/,
19293  1 /*until_day*/,
19294  0 /*until_time_code (0/15)*/,
19295  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19296  },
19297  // 6:00 - +06 1930 Jun 21
19298  {
19299  NULL /*zone_policy*/,
19300  "+06" /*format*/,
19301  1440 /*offset_code (21600/15)*/,
19302  0 /*offset_remainder (21600%15)*/,
19303  0 /*delta_minutes*/,
19304  1930 /*until_year*/,
19305  6 /*until_month*/,
19306  21 /*until_day*/,
19307  0 /*until_time_code (0/15)*/,
19308  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19309  },
19310  // 7:00 Russia +07/+08 1991 Mar 31 2:00s
19311  {
19312  &kAtcAllZonePolicyRussia /*zone_policy*/,
19313  "+07/+08" /*format*/,
19314  1680 /*offset_code (25200/15)*/,
19315  0 /*offset_remainder (25200%15)*/,
19316  0 /*delta_minutes*/,
19317  1991 /*until_year*/,
19318  3 /*until_month*/,
19319  31 /*until_day*/,
19320  480 /*until_time_code (7200/15)*/,
19321  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19322  },
19323  // 6:00 Russia +06/+07 1992 Jan 19 2:00s
19324  {
19325  &kAtcAllZonePolicyRussia /*zone_policy*/,
19326  "+06/+07" /*format*/,
19327  1440 /*offset_code (21600/15)*/,
19328  0 /*offset_remainder (21600%15)*/,
19329  0 /*delta_minutes*/,
19330  1992 /*until_year*/,
19331  1 /*until_month*/,
19332  19 /*until_day*/,
19333  480 /*until_time_code (7200/15)*/,
19334  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19335  },
19336  // 7:00 Russia +07/+08 2010 Mar 28 2:00s
19337  {
19338  &kAtcAllZonePolicyRussia /*zone_policy*/,
19339  "+07/+08" /*format*/,
19340  1680 /*offset_code (25200/15)*/,
19341  0 /*offset_remainder (25200%15)*/,
19342  0 /*delta_minutes*/,
19343  2010 /*until_year*/,
19344  3 /*until_month*/,
19345  28 /*until_day*/,
19346  480 /*until_time_code (7200/15)*/,
19347  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19348  },
19349  // 6:00 Russia +06/+07 2011 Mar 27 2:00s
19350  {
19351  &kAtcAllZonePolicyRussia /*zone_policy*/,
19352  "+06/+07" /*format*/,
19353  1440 /*offset_code (21600/15)*/,
19354  0 /*offset_remainder (21600%15)*/,
19355  0 /*delta_minutes*/,
19356  2011 /*until_year*/,
19357  3 /*until_month*/,
19358  27 /*until_day*/,
19359  480 /*until_time_code (7200/15)*/,
19360  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19361  },
19362  // 7:00 - +07
19363  {
19364  NULL /*zone_policy*/,
19365  "+07" /*format*/,
19366  1680 /*offset_code (25200/15)*/,
19367  0 /*offset_remainder (25200%15)*/,
19368  0 /*delta_minutes*/,
19369  32767 /*until_year*/,
19370  1 /*until_month*/,
19371  1 /*until_day*/,
19372  0 /*until_time_code (0/15)*/,
19373  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19374  },
19375 
19376 };
19377 
19378 static const char kAtcZoneNameAsia_Novokuznetsk[] = "Asia/Novokuznetsk";
19379 
19380 const AtcZoneInfo kAtcAllZoneAsia_Novokuznetsk = {
19381  kAtcZoneNameAsia_Novokuznetsk /*name*/,
19382  0x69264f93 /*zone_id*/,
19383  &kAtcAllZoneContext /*zone_context*/,
19384  7 /*num_eras*/,
19385  kAtcZoneEraAsia_Novokuznetsk /*eras*/,
19386  NULL /*target_info*/,
19387 };
19388 
19389 //---------------------------------------------------------------------------
19390 // Zone name: Asia/Novosibirsk
19391 // Zone Eras: 9
19392 //---------------------------------------------------------------------------
19393 
19394 static const AtcZoneEra kAtcZoneEraAsia_Novosibirsk[] = {
19395  // 5:31:40 - LMT 1919 Dec 14 6:00
19396  {
19397  NULL /*zone_policy*/,
19398  "LMT" /*format*/,
19399  1326 /*offset_code (19900/15)*/,
19400  10 /*offset_remainder (19900%15)*/,
19401  0 /*delta_minutes*/,
19402  1919 /*until_year*/,
19403  12 /*until_month*/,
19404  14 /*until_day*/,
19405  1440 /*until_time_code (21600/15)*/,
19406  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19407  },
19408  // 6:00 - +06 1930 Jun 21
19409  {
19410  NULL /*zone_policy*/,
19411  "+06" /*format*/,
19412  1440 /*offset_code (21600/15)*/,
19413  0 /*offset_remainder (21600%15)*/,
19414  0 /*delta_minutes*/,
19415  1930 /*until_year*/,
19416  6 /*until_month*/,
19417  21 /*until_day*/,
19418  0 /*until_time_code (0/15)*/,
19419  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19420  },
19421  // 7:00 Russia +07/+08 1991 Mar 31 2:00s
19422  {
19423  &kAtcAllZonePolicyRussia /*zone_policy*/,
19424  "+07/+08" /*format*/,
19425  1680 /*offset_code (25200/15)*/,
19426  0 /*offset_remainder (25200%15)*/,
19427  0 /*delta_minutes*/,
19428  1991 /*until_year*/,
19429  3 /*until_month*/,
19430  31 /*until_day*/,
19431  480 /*until_time_code (7200/15)*/,
19432  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19433  },
19434  // 6:00 Russia +06/+07 1992 Jan 19 2:00s
19435  {
19436  &kAtcAllZonePolicyRussia /*zone_policy*/,
19437  "+06/+07" /*format*/,
19438  1440 /*offset_code (21600/15)*/,
19439  0 /*offset_remainder (21600%15)*/,
19440  0 /*delta_minutes*/,
19441  1992 /*until_year*/,
19442  1 /*until_month*/,
19443  19 /*until_day*/,
19444  480 /*until_time_code (7200/15)*/,
19445  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19446  },
19447  // 7:00 Russia +07/+08 1993 May 23
19448  {
19449  &kAtcAllZonePolicyRussia /*zone_policy*/,
19450  "+07/+08" /*format*/,
19451  1680 /*offset_code (25200/15)*/,
19452  0 /*offset_remainder (25200%15)*/,
19453  0 /*delta_minutes*/,
19454  1993 /*until_year*/,
19455  5 /*until_month*/,
19456  23 /*until_day*/,
19457  0 /*until_time_code (0/15)*/,
19458  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19459  },
19460  // 6:00 Russia +06/+07 2011 Mar 27 2:00s
19461  {
19462  &kAtcAllZonePolicyRussia /*zone_policy*/,
19463  "+06/+07" /*format*/,
19464  1440 /*offset_code (21600/15)*/,
19465  0 /*offset_remainder (21600%15)*/,
19466  0 /*delta_minutes*/,
19467  2011 /*until_year*/,
19468  3 /*until_month*/,
19469  27 /*until_day*/,
19470  480 /*until_time_code (7200/15)*/,
19471  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19472  },
19473  // 7:00 - +07 2014 Oct 26 2:00s
19474  {
19475  NULL /*zone_policy*/,
19476  "+07" /*format*/,
19477  1680 /*offset_code (25200/15)*/,
19478  0 /*offset_remainder (25200%15)*/,
19479  0 /*delta_minutes*/,
19480  2014 /*until_year*/,
19481  10 /*until_month*/,
19482  26 /*until_day*/,
19483  480 /*until_time_code (7200/15)*/,
19484  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19485  },
19486  // 6:00 - +06 2016 Jul 24 2:00s
19487  {
19488  NULL /*zone_policy*/,
19489  "+06" /*format*/,
19490  1440 /*offset_code (21600/15)*/,
19491  0 /*offset_remainder (21600%15)*/,
19492  0 /*delta_minutes*/,
19493  2016 /*until_year*/,
19494  7 /*until_month*/,
19495  24 /*until_day*/,
19496  480 /*until_time_code (7200/15)*/,
19497  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19498  },
19499  // 7:00 - +07
19500  {
19501  NULL /*zone_policy*/,
19502  "+07" /*format*/,
19503  1680 /*offset_code (25200/15)*/,
19504  0 /*offset_remainder (25200%15)*/,
19505  0 /*delta_minutes*/,
19506  32767 /*until_year*/,
19507  1 /*until_month*/,
19508  1 /*until_day*/,
19509  0 /*until_time_code (0/15)*/,
19510  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19511  },
19512 
19513 };
19514 
19515 static const char kAtcZoneNameAsia_Novosibirsk[] = "Asia/Novosibirsk";
19516 
19517 const AtcZoneInfo kAtcAllZoneAsia_Novosibirsk = {
19518  kAtcZoneNameAsia_Novosibirsk /*name*/,
19519  0xa2a435cb /*zone_id*/,
19520  &kAtcAllZoneContext /*zone_context*/,
19521  9 /*num_eras*/,
19522  kAtcZoneEraAsia_Novosibirsk /*eras*/,
19523  NULL /*target_info*/,
19524 };
19525 
19526 //---------------------------------------------------------------------------
19527 // Zone name: Asia/Omsk
19528 // Zone Eras: 7
19529 //---------------------------------------------------------------------------
19530 
19531 static const AtcZoneEra kAtcZoneEraAsia_Omsk[] = {
19532  // 4:53:30 - LMT 1919 Nov 14
19533  {
19534  NULL /*zone_policy*/,
19535  "LMT" /*format*/,
19536  1174 /*offset_code (17610/15)*/,
19537  0 /*offset_remainder (17610%15)*/,
19538  0 /*delta_minutes*/,
19539  1919 /*until_year*/,
19540  11 /*until_month*/,
19541  14 /*until_day*/,
19542  0 /*until_time_code (0/15)*/,
19543  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19544  },
19545  // 5:00 - +05 1930 Jun 21
19546  {
19547  NULL /*zone_policy*/,
19548  "+05" /*format*/,
19549  1200 /*offset_code (18000/15)*/,
19550  0 /*offset_remainder (18000%15)*/,
19551  0 /*delta_minutes*/,
19552  1930 /*until_year*/,
19553  6 /*until_month*/,
19554  21 /*until_day*/,
19555  0 /*until_time_code (0/15)*/,
19556  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19557  },
19558  // 6:00 Russia +06/+07 1991 Mar 31 2:00s
19559  {
19560  &kAtcAllZonePolicyRussia /*zone_policy*/,
19561  "+06/+07" /*format*/,
19562  1440 /*offset_code (21600/15)*/,
19563  0 /*offset_remainder (21600%15)*/,
19564  0 /*delta_minutes*/,
19565  1991 /*until_year*/,
19566  3 /*until_month*/,
19567  31 /*until_day*/,
19568  480 /*until_time_code (7200/15)*/,
19569  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19570  },
19571  // 5:00 Russia +05/+06 1992 Jan 19 2:00s
19572  {
19573  &kAtcAllZonePolicyRussia /*zone_policy*/,
19574  "+05/+06" /*format*/,
19575  1200 /*offset_code (18000/15)*/,
19576  0 /*offset_remainder (18000%15)*/,
19577  0 /*delta_minutes*/,
19578  1992 /*until_year*/,
19579  1 /*until_month*/,
19580  19 /*until_day*/,
19581  480 /*until_time_code (7200/15)*/,
19582  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19583  },
19584  // 6:00 Russia +06/+07 2011 Mar 27 2:00s
19585  {
19586  &kAtcAllZonePolicyRussia /*zone_policy*/,
19587  "+06/+07" /*format*/,
19588  1440 /*offset_code (21600/15)*/,
19589  0 /*offset_remainder (21600%15)*/,
19590  0 /*delta_minutes*/,
19591  2011 /*until_year*/,
19592  3 /*until_month*/,
19593  27 /*until_day*/,
19594  480 /*until_time_code (7200/15)*/,
19595  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19596  },
19597  // 7:00 - +07 2014 Oct 26 2:00s
19598  {
19599  NULL /*zone_policy*/,
19600  "+07" /*format*/,
19601  1680 /*offset_code (25200/15)*/,
19602  0 /*offset_remainder (25200%15)*/,
19603  0 /*delta_minutes*/,
19604  2014 /*until_year*/,
19605  10 /*until_month*/,
19606  26 /*until_day*/,
19607  480 /*until_time_code (7200/15)*/,
19608  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19609  },
19610  // 6:00 - +06
19611  {
19612  NULL /*zone_policy*/,
19613  "+06" /*format*/,
19614  1440 /*offset_code (21600/15)*/,
19615  0 /*offset_remainder (21600%15)*/,
19616  0 /*delta_minutes*/,
19617  32767 /*until_year*/,
19618  1 /*until_month*/,
19619  1 /*until_day*/,
19620  0 /*until_time_code (0/15)*/,
19621  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19622  },
19623 
19624 };
19625 
19626 static const char kAtcZoneNameAsia_Omsk[] = "Asia/Omsk";
19627 
19628 const AtcZoneInfo kAtcAllZoneAsia_Omsk = {
19629  kAtcZoneNameAsia_Omsk /*name*/,
19630  0x1faeddac /*zone_id*/,
19631  &kAtcAllZoneContext /*zone_context*/,
19632  7 /*num_eras*/,
19633  kAtcZoneEraAsia_Omsk /*eras*/,
19634  NULL /*target_info*/,
19635 };
19636 
19637 //---------------------------------------------------------------------------
19638 // Zone name: Asia/Oral
19639 // Zone Eras: 10
19640 //---------------------------------------------------------------------------
19641 
19642 static const AtcZoneEra kAtcZoneEraAsia_Oral[] = {
19643  // 3:25:24 - LMT 1924 May 2
19644  {
19645  NULL /*zone_policy*/,
19646  "LMT" /*format*/,
19647  821 /*offset_code (12324/15)*/,
19648  9 /*offset_remainder (12324%15)*/,
19649  0 /*delta_minutes*/,
19650  1924 /*until_year*/,
19651  5 /*until_month*/,
19652  2 /*until_day*/,
19653  0 /*until_time_code (0/15)*/,
19654  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19655  },
19656  // 3:00 - +03 1930 Jun 21
19657  {
19658  NULL /*zone_policy*/,
19659  "+03" /*format*/,
19660  720 /*offset_code (10800/15)*/,
19661  0 /*offset_remainder (10800%15)*/,
19662  0 /*delta_minutes*/,
19663  1930 /*until_year*/,
19664  6 /*until_month*/,
19665  21 /*until_day*/,
19666  0 /*until_time_code (0/15)*/,
19667  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19668  },
19669  // 5:00 - +05 1981 Apr 1
19670  {
19671  NULL /*zone_policy*/,
19672  "+05" /*format*/,
19673  1200 /*offset_code (18000/15)*/,
19674  0 /*offset_remainder (18000%15)*/,
19675  0 /*delta_minutes*/,
19676  1981 /*until_year*/,
19677  4 /*until_month*/,
19678  1 /*until_day*/,
19679  0 /*until_time_code (0/15)*/,
19680  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19681  },
19682  // 5:00 1:00 +06 1981 Oct 1
19683  {
19684  NULL /*zone_policy*/,
19685  "+06" /*format*/,
19686  1200 /*offset_code (18000/15)*/,
19687  0 /*offset_remainder (18000%15)*/,
19688  60 /*delta_minutes*/,
19689  1981 /*until_year*/,
19690  10 /*until_month*/,
19691  1 /*until_day*/,
19692  0 /*until_time_code (0/15)*/,
19693  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19694  },
19695  // 6:00 - +06 1982 Apr 1
19696  {
19697  NULL /*zone_policy*/,
19698  "+06" /*format*/,
19699  1440 /*offset_code (21600/15)*/,
19700  0 /*offset_remainder (21600%15)*/,
19701  0 /*delta_minutes*/,
19702  1982 /*until_year*/,
19703  4 /*until_month*/,
19704  1 /*until_day*/,
19705  0 /*until_time_code (0/15)*/,
19706  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19707  },
19708  // 5:00 RussiaAsia +05/+06 1989 Mar 26 2:00s
19709  {
19710  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
19711  "+05/+06" /*format*/,
19712  1200 /*offset_code (18000/15)*/,
19713  0 /*offset_remainder (18000%15)*/,
19714  0 /*delta_minutes*/,
19715  1989 /*until_year*/,
19716  3 /*until_month*/,
19717  26 /*until_day*/,
19718  480 /*until_time_code (7200/15)*/,
19719  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19720  },
19721  // 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
19722  {
19723  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
19724  "+04/+05" /*format*/,
19725  960 /*offset_code (14400/15)*/,
19726  0 /*offset_remainder (14400%15)*/,
19727  0 /*delta_minutes*/,
19728  1992 /*until_year*/,
19729  1 /*until_month*/,
19730  19 /*until_day*/,
19731  480 /*until_time_code (7200/15)*/,
19732  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19733  },
19734  // 5:00 RussiaAsia +05/+06 1992 Mar 29 2:00s
19735  {
19736  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
19737  "+05/+06" /*format*/,
19738  1200 /*offset_code (18000/15)*/,
19739  0 /*offset_remainder (18000%15)*/,
19740  0 /*delta_minutes*/,
19741  1992 /*until_year*/,
19742  3 /*until_month*/,
19743  29 /*until_day*/,
19744  480 /*until_time_code (7200/15)*/,
19745  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19746  },
19747  // 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
19748  {
19749  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
19750  "+04/+05" /*format*/,
19751  960 /*offset_code (14400/15)*/,
19752  0 /*offset_remainder (14400%15)*/,
19753  0 /*delta_minutes*/,
19754  2004 /*until_year*/,
19755  10 /*until_month*/,
19756  31 /*until_day*/,
19757  480 /*until_time_code (7200/15)*/,
19758  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
19759  },
19760  // 5:00 - +05
19761  {
19762  NULL /*zone_policy*/,
19763  "+05" /*format*/,
19764  1200 /*offset_code (18000/15)*/,
19765  0 /*offset_remainder (18000%15)*/,
19766  0 /*delta_minutes*/,
19767  32767 /*until_year*/,
19768  1 /*until_month*/,
19769  1 /*until_day*/,
19770  0 /*until_time_code (0/15)*/,
19771  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19772  },
19773 
19774 };
19775 
19776 static const char kAtcZoneNameAsia_Oral[] = "Asia/Oral";
19777 
19778 const AtcZoneInfo kAtcAllZoneAsia_Oral = {
19779  kAtcZoneNameAsia_Oral /*name*/,
19780  0x1faef0a0 /*zone_id*/,
19781  &kAtcAllZoneContext /*zone_context*/,
19782  10 /*num_eras*/,
19783  kAtcZoneEraAsia_Oral /*eras*/,
19784  NULL /*target_info*/,
19785 };
19786 
19787 //---------------------------------------------------------------------------
19788 // Zone name: Asia/Pontianak
19789 // Zone Eras: 9
19790 //---------------------------------------------------------------------------
19791 
19792 static const AtcZoneEra kAtcZoneEraAsia_Pontianak[] = {
19793  // 7:17:20 - LMT 1908 May
19794  {
19795  NULL /*zone_policy*/,
19796  "LMT" /*format*/,
19797  1749 /*offset_code (26240/15)*/,
19798  5 /*offset_remainder (26240%15)*/,
19799  0 /*delta_minutes*/,
19800  1908 /*until_year*/,
19801  5 /*until_month*/,
19802  1 /*until_day*/,
19803  0 /*until_time_code (0/15)*/,
19804  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19805  },
19806  // 7:17:20 - PMT 1932 Nov
19807  {
19808  NULL /*zone_policy*/,
19809  "PMT" /*format*/,
19810  1749 /*offset_code (26240/15)*/,
19811  5 /*offset_remainder (26240%15)*/,
19812  0 /*delta_minutes*/,
19813  1932 /*until_year*/,
19814  11 /*until_month*/,
19815  1 /*until_day*/,
19816  0 /*until_time_code (0/15)*/,
19817  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19818  },
19819  // 7:30 - +0730 1942 Jan 29
19820  {
19821  NULL /*zone_policy*/,
19822  "+0730" /*format*/,
19823  1800 /*offset_code (27000/15)*/,
19824  0 /*offset_remainder (27000%15)*/,
19825  0 /*delta_minutes*/,
19826  1942 /*until_year*/,
19827  1 /*until_month*/,
19828  29 /*until_day*/,
19829  0 /*until_time_code (0/15)*/,
19830  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19831  },
19832  // 9:00 - +09 1945 Sep 23
19833  {
19834  NULL /*zone_policy*/,
19835  "+09" /*format*/,
19836  2160 /*offset_code (32400/15)*/,
19837  0 /*offset_remainder (32400%15)*/,
19838  0 /*delta_minutes*/,
19839  1945 /*until_year*/,
19840  9 /*until_month*/,
19841  23 /*until_day*/,
19842  0 /*until_time_code (0/15)*/,
19843  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19844  },
19845  // 7:30 - +0730 1948 May
19846  {
19847  NULL /*zone_policy*/,
19848  "+0730" /*format*/,
19849  1800 /*offset_code (27000/15)*/,
19850  0 /*offset_remainder (27000%15)*/,
19851  0 /*delta_minutes*/,
19852  1948 /*until_year*/,
19853  5 /*until_month*/,
19854  1 /*until_day*/,
19855  0 /*until_time_code (0/15)*/,
19856  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19857  },
19858  // 8:00 - +08 1950 May
19859  {
19860  NULL /*zone_policy*/,
19861  "+08" /*format*/,
19862  1920 /*offset_code (28800/15)*/,
19863  0 /*offset_remainder (28800%15)*/,
19864  0 /*delta_minutes*/,
19865  1950 /*until_year*/,
19866  5 /*until_month*/,
19867  1 /*until_day*/,
19868  0 /*until_time_code (0/15)*/,
19869  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19870  },
19871  // 7:30 - +0730 1964
19872  {
19873  NULL /*zone_policy*/,
19874  "+0730" /*format*/,
19875  1800 /*offset_code (27000/15)*/,
19876  0 /*offset_remainder (27000%15)*/,
19877  0 /*delta_minutes*/,
19878  1964 /*until_year*/,
19879  1 /*until_month*/,
19880  1 /*until_day*/,
19881  0 /*until_time_code (0/15)*/,
19882  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19883  },
19884  // 8:00 - WITA 1988 Jan 1
19885  {
19886  NULL /*zone_policy*/,
19887  "WITA" /*format*/,
19888  1920 /*offset_code (28800/15)*/,
19889  0 /*offset_remainder (28800%15)*/,
19890  0 /*delta_minutes*/,
19891  1988 /*until_year*/,
19892  1 /*until_month*/,
19893  1 /*until_day*/,
19894  0 /*until_time_code (0/15)*/,
19895  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19896  },
19897  // 7:00 - WIB
19898  {
19899  NULL /*zone_policy*/,
19900  "WIB" /*format*/,
19901  1680 /*offset_code (25200/15)*/,
19902  0 /*offset_remainder (25200%15)*/,
19903  0 /*delta_minutes*/,
19904  32767 /*until_year*/,
19905  1 /*until_month*/,
19906  1 /*until_day*/,
19907  0 /*until_time_code (0/15)*/,
19908  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19909  },
19910 
19911 };
19912 
19913 static const char kAtcZoneNameAsia_Pontianak[] = "Asia/Pontianak";
19914 
19915 const AtcZoneInfo kAtcAllZoneAsia_Pontianak = {
19916  kAtcZoneNameAsia_Pontianak /*name*/,
19917  0x1a76c057 /*zone_id*/,
19918  &kAtcAllZoneContext /*zone_context*/,
19919  9 /*num_eras*/,
19920  kAtcZoneEraAsia_Pontianak /*eras*/,
19921  NULL /*target_info*/,
19922 };
19923 
19924 //---------------------------------------------------------------------------
19925 // Zone name: Asia/Pyongyang
19926 // Zone Eras: 6
19927 //---------------------------------------------------------------------------
19928 
19929 static const AtcZoneEra kAtcZoneEraAsia_Pyongyang[] = {
19930  // 8:23:00 - LMT 1908 Apr 1
19931  {
19932  NULL /*zone_policy*/,
19933  "LMT" /*format*/,
19934  2012 /*offset_code (30180/15)*/,
19935  0 /*offset_remainder (30180%15)*/,
19936  0 /*delta_minutes*/,
19937  1908 /*until_year*/,
19938  4 /*until_month*/,
19939  1 /*until_day*/,
19940  0 /*until_time_code (0/15)*/,
19941  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19942  },
19943  // 8:30 - KST 1912 Jan 1
19944  {
19945  NULL /*zone_policy*/,
19946  "KST" /*format*/,
19947  2040 /*offset_code (30600/15)*/,
19948  0 /*offset_remainder (30600%15)*/,
19949  0 /*delta_minutes*/,
19950  1912 /*until_year*/,
19951  1 /*until_month*/,
19952  1 /*until_day*/,
19953  0 /*until_time_code (0/15)*/,
19954  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19955  },
19956  // 9:00 - JST 1945 Aug 24
19957  {
19958  NULL /*zone_policy*/,
19959  "JST" /*format*/,
19960  2160 /*offset_code (32400/15)*/,
19961  0 /*offset_remainder (32400%15)*/,
19962  0 /*delta_minutes*/,
19963  1945 /*until_year*/,
19964  8 /*until_month*/,
19965  24 /*until_day*/,
19966  0 /*until_time_code (0/15)*/,
19967  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19968  },
19969  // 9:00 - KST 2015 Aug 15 00:00
19970  {
19971  NULL /*zone_policy*/,
19972  "KST" /*format*/,
19973  2160 /*offset_code (32400/15)*/,
19974  0 /*offset_remainder (32400%15)*/,
19975  0 /*delta_minutes*/,
19976  2015 /*until_year*/,
19977  8 /*until_month*/,
19978  15 /*until_day*/,
19979  0 /*until_time_code (0/15)*/,
19980  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19981  },
19982  // 8:30 - KST 2018 May 4 23:30
19983  {
19984  NULL /*zone_policy*/,
19985  "KST" /*format*/,
19986  2040 /*offset_code (30600/15)*/,
19987  0 /*offset_remainder (30600%15)*/,
19988  0 /*delta_minutes*/,
19989  2018 /*until_year*/,
19990  5 /*until_month*/,
19991  4 /*until_day*/,
19992  5640 /*until_time_code (84600/15)*/,
19993  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
19994  },
19995  // 9:00 - KST
19996  {
19997  NULL /*zone_policy*/,
19998  "KST" /*format*/,
19999  2160 /*offset_code (32400/15)*/,
20000  0 /*offset_remainder (32400%15)*/,
20001  0 /*delta_minutes*/,
20002  32767 /*until_year*/,
20003  1 /*until_month*/,
20004  1 /*until_day*/,
20005  0 /*until_time_code (0/15)*/,
20006  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20007  },
20008 
20009 };
20010 
20011 static const char kAtcZoneNameAsia_Pyongyang[] = "Asia/Pyongyang";
20012 
20013 const AtcZoneInfo kAtcAllZoneAsia_Pyongyang = {
20014  kAtcZoneNameAsia_Pyongyang /*name*/,
20015  0x93ed1c8e /*zone_id*/,
20016  &kAtcAllZoneContext /*zone_context*/,
20017  6 /*num_eras*/,
20018  kAtcZoneEraAsia_Pyongyang /*eras*/,
20019  NULL /*target_info*/,
20020 };
20021 
20022 //---------------------------------------------------------------------------
20023 // Zone name: Asia/Qatar
20024 // Zone Eras: 3
20025 //---------------------------------------------------------------------------
20026 
20027 static const AtcZoneEra kAtcZoneEraAsia_Qatar[] = {
20028  // 3:26:08 - LMT 1920
20029  {
20030  NULL /*zone_policy*/,
20031  "LMT" /*format*/,
20032  824 /*offset_code (12368/15)*/,
20033  8 /*offset_remainder (12368%15)*/,
20034  0 /*delta_minutes*/,
20035  1920 /*until_year*/,
20036  1 /*until_month*/,
20037  1 /*until_day*/,
20038  0 /*until_time_code (0/15)*/,
20039  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20040  },
20041  // 4:00 - +04 1972 Jun
20042  {
20043  NULL /*zone_policy*/,
20044  "+04" /*format*/,
20045  960 /*offset_code (14400/15)*/,
20046  0 /*offset_remainder (14400%15)*/,
20047  0 /*delta_minutes*/,
20048  1972 /*until_year*/,
20049  6 /*until_month*/,
20050  1 /*until_day*/,
20051  0 /*until_time_code (0/15)*/,
20052  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20053  },
20054  // 3:00 - +03
20055  {
20056  NULL /*zone_policy*/,
20057  "+03" /*format*/,
20058  720 /*offset_code (10800/15)*/,
20059  0 /*offset_remainder (10800%15)*/,
20060  0 /*delta_minutes*/,
20061  32767 /*until_year*/,
20062  1 /*until_month*/,
20063  1 /*until_day*/,
20064  0 /*until_time_code (0/15)*/,
20065  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20066  },
20067 
20068 };
20069 
20070 static const char kAtcZoneNameAsia_Qatar[] = "Asia/Qatar";
20071 
20072 const AtcZoneInfo kAtcAllZoneAsia_Qatar = {
20073  kAtcZoneNameAsia_Qatar /*name*/,
20074  0x15a8330b /*zone_id*/,
20075  &kAtcAllZoneContext /*zone_context*/,
20076  3 /*num_eras*/,
20077  kAtcZoneEraAsia_Qatar /*eras*/,
20078  NULL /*target_info*/,
20079 };
20080 
20081 //---------------------------------------------------------------------------
20082 // Zone name: Asia/Qostanay
20083 // Zone Eras: 9
20084 //---------------------------------------------------------------------------
20085 
20086 static const AtcZoneEra kAtcZoneEraAsia_Qostanay[] = {
20087  // 4:14:28 - LMT 1924 May 2
20088  {
20089  NULL /*zone_policy*/,
20090  "LMT" /*format*/,
20091  1017 /*offset_code (15268/15)*/,
20092  13 /*offset_remainder (15268%15)*/,
20093  0 /*delta_minutes*/,
20094  1924 /*until_year*/,
20095  5 /*until_month*/,
20096  2 /*until_day*/,
20097  0 /*until_time_code (0/15)*/,
20098  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20099  },
20100  // 4:00 - +04 1930 Jun 21
20101  {
20102  NULL /*zone_policy*/,
20103  "+04" /*format*/,
20104  960 /*offset_code (14400/15)*/,
20105  0 /*offset_remainder (14400%15)*/,
20106  0 /*delta_minutes*/,
20107  1930 /*until_year*/,
20108  6 /*until_month*/,
20109  21 /*until_day*/,
20110  0 /*until_time_code (0/15)*/,
20111  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20112  },
20113  // 5:00 - +05 1981 Apr 1
20114  {
20115  NULL /*zone_policy*/,
20116  "+05" /*format*/,
20117  1200 /*offset_code (18000/15)*/,
20118  0 /*offset_remainder (18000%15)*/,
20119  0 /*delta_minutes*/,
20120  1981 /*until_year*/,
20121  4 /*until_month*/,
20122  1 /*until_day*/,
20123  0 /*until_time_code (0/15)*/,
20124  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20125  },
20126  // 5:00 1:00 +06 1981 Oct 1
20127  {
20128  NULL /*zone_policy*/,
20129  "+06" /*format*/,
20130  1200 /*offset_code (18000/15)*/,
20131  0 /*offset_remainder (18000%15)*/,
20132  60 /*delta_minutes*/,
20133  1981 /*until_year*/,
20134  10 /*until_month*/,
20135  1 /*until_day*/,
20136  0 /*until_time_code (0/15)*/,
20137  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20138  },
20139  // 6:00 - +06 1982 Apr 1
20140  {
20141  NULL /*zone_policy*/,
20142  "+06" /*format*/,
20143  1440 /*offset_code (21600/15)*/,
20144  0 /*offset_remainder (21600%15)*/,
20145  0 /*delta_minutes*/,
20146  1982 /*until_year*/,
20147  4 /*until_month*/,
20148  1 /*until_day*/,
20149  0 /*until_time_code (0/15)*/,
20150  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20151  },
20152  // 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
20153  {
20154  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20155  "+05/+06" /*format*/,
20156  1200 /*offset_code (18000/15)*/,
20157  0 /*offset_remainder (18000%15)*/,
20158  0 /*delta_minutes*/,
20159  1991 /*until_year*/,
20160  3 /*until_month*/,
20161  31 /*until_day*/,
20162  480 /*until_time_code (7200/15)*/,
20163  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20164  },
20165  // 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
20166  {
20167  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20168  "+04/+05" /*format*/,
20169  960 /*offset_code (14400/15)*/,
20170  0 /*offset_remainder (14400%15)*/,
20171  0 /*delta_minutes*/,
20172  1992 /*until_year*/,
20173  1 /*until_month*/,
20174  19 /*until_day*/,
20175  480 /*until_time_code (7200/15)*/,
20176  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20177  },
20178  // 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
20179  {
20180  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20181  "+05/+06" /*format*/,
20182  1200 /*offset_code (18000/15)*/,
20183  0 /*offset_remainder (18000%15)*/,
20184  0 /*delta_minutes*/,
20185  2004 /*until_year*/,
20186  10 /*until_month*/,
20187  31 /*until_day*/,
20188  480 /*until_time_code (7200/15)*/,
20189  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20190  },
20191  // 6:00 - +06
20192  {
20193  NULL /*zone_policy*/,
20194  "+06" /*format*/,
20195  1440 /*offset_code (21600/15)*/,
20196  0 /*offset_remainder (21600%15)*/,
20197  0 /*delta_minutes*/,
20198  32767 /*until_year*/,
20199  1 /*until_month*/,
20200  1 /*until_day*/,
20201  0 /*until_time_code (0/15)*/,
20202  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20203  },
20204 
20205 };
20206 
20207 static const char kAtcZoneNameAsia_Qostanay[] = "Asia/Qostanay";
20208 
20209 const AtcZoneInfo kAtcAllZoneAsia_Qostanay = {
20210  kAtcZoneNameAsia_Qostanay /*name*/,
20211  0x654fe522 /*zone_id*/,
20212  &kAtcAllZoneContext /*zone_context*/,
20213  9 /*num_eras*/,
20214  kAtcZoneEraAsia_Qostanay /*eras*/,
20215  NULL /*target_info*/,
20216 };
20217 
20218 //---------------------------------------------------------------------------
20219 // Zone name: Asia/Qyzylorda
20220 // Zone Eras: 12
20221 //---------------------------------------------------------------------------
20222 
20223 static const AtcZoneEra kAtcZoneEraAsia_Qyzylorda[] = {
20224  // 4:21:52 - LMT 1924 May 2
20225  {
20226  NULL /*zone_policy*/,
20227  "LMT" /*format*/,
20228  1047 /*offset_code (15712/15)*/,
20229  7 /*offset_remainder (15712%15)*/,
20230  0 /*delta_minutes*/,
20231  1924 /*until_year*/,
20232  5 /*until_month*/,
20233  2 /*until_day*/,
20234  0 /*until_time_code (0/15)*/,
20235  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20236  },
20237  // 4:00 - +04 1930 Jun 21
20238  {
20239  NULL /*zone_policy*/,
20240  "+04" /*format*/,
20241  960 /*offset_code (14400/15)*/,
20242  0 /*offset_remainder (14400%15)*/,
20243  0 /*delta_minutes*/,
20244  1930 /*until_year*/,
20245  6 /*until_month*/,
20246  21 /*until_day*/,
20247  0 /*until_time_code (0/15)*/,
20248  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20249  },
20250  // 5:00 - +05 1981 Apr 1
20251  {
20252  NULL /*zone_policy*/,
20253  "+05" /*format*/,
20254  1200 /*offset_code (18000/15)*/,
20255  0 /*offset_remainder (18000%15)*/,
20256  0 /*delta_minutes*/,
20257  1981 /*until_year*/,
20258  4 /*until_month*/,
20259  1 /*until_day*/,
20260  0 /*until_time_code (0/15)*/,
20261  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20262  },
20263  // 5:00 1:00 +06 1981 Oct 1
20264  {
20265  NULL /*zone_policy*/,
20266  "+06" /*format*/,
20267  1200 /*offset_code (18000/15)*/,
20268  0 /*offset_remainder (18000%15)*/,
20269  60 /*delta_minutes*/,
20270  1981 /*until_year*/,
20271  10 /*until_month*/,
20272  1 /*until_day*/,
20273  0 /*until_time_code (0/15)*/,
20274  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20275  },
20276  // 6:00 - +06 1982 Apr 1
20277  {
20278  NULL /*zone_policy*/,
20279  "+06" /*format*/,
20280  1440 /*offset_code (21600/15)*/,
20281  0 /*offset_remainder (21600%15)*/,
20282  0 /*delta_minutes*/,
20283  1982 /*until_year*/,
20284  4 /*until_month*/,
20285  1 /*until_day*/,
20286  0 /*until_time_code (0/15)*/,
20287  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20288  },
20289  // 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
20290  {
20291  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20292  "+05/+06" /*format*/,
20293  1200 /*offset_code (18000/15)*/,
20294  0 /*offset_remainder (18000%15)*/,
20295  0 /*delta_minutes*/,
20296  1991 /*until_year*/,
20297  3 /*until_month*/,
20298  31 /*until_day*/,
20299  480 /*until_time_code (7200/15)*/,
20300  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20301  },
20302  // 4:00 RussiaAsia +04/+05 1991 Sep 29 2:00s
20303  {
20304  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20305  "+04/+05" /*format*/,
20306  960 /*offset_code (14400/15)*/,
20307  0 /*offset_remainder (14400%15)*/,
20308  0 /*delta_minutes*/,
20309  1991 /*until_year*/,
20310  9 /*until_month*/,
20311  29 /*until_day*/,
20312  480 /*until_time_code (7200/15)*/,
20313  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20314  },
20315  // 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
20316  {
20317  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20318  "+05/+06" /*format*/,
20319  1200 /*offset_code (18000/15)*/,
20320  0 /*offset_remainder (18000%15)*/,
20321  0 /*delta_minutes*/,
20322  1992 /*until_year*/,
20323  1 /*until_month*/,
20324  19 /*until_day*/,
20325  480 /*until_time_code (7200/15)*/,
20326  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20327  },
20328  // 6:00 RussiaAsia +06/+07 1992 Mar 29 2:00s
20329  {
20330  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20331  "+06/+07" /*format*/,
20332  1440 /*offset_code (21600/15)*/,
20333  0 /*offset_remainder (21600%15)*/,
20334  0 /*delta_minutes*/,
20335  1992 /*until_year*/,
20336  3 /*until_month*/,
20337  29 /*until_day*/,
20338  480 /*until_time_code (7200/15)*/,
20339  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20340  },
20341  // 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
20342  {
20343  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20344  "+05/+06" /*format*/,
20345  1200 /*offset_code (18000/15)*/,
20346  0 /*offset_remainder (18000%15)*/,
20347  0 /*delta_minutes*/,
20348  2004 /*until_year*/,
20349  10 /*until_month*/,
20350  31 /*until_day*/,
20351  480 /*until_time_code (7200/15)*/,
20352  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20353  },
20354  // 6:00 - +06 2018 Dec 21 0:00
20355  {
20356  NULL /*zone_policy*/,
20357  "+06" /*format*/,
20358  1440 /*offset_code (21600/15)*/,
20359  0 /*offset_remainder (21600%15)*/,
20360  0 /*delta_minutes*/,
20361  2018 /*until_year*/,
20362  12 /*until_month*/,
20363  21 /*until_day*/,
20364  0 /*until_time_code (0/15)*/,
20365  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20366  },
20367  // 5:00 - +05
20368  {
20369  NULL /*zone_policy*/,
20370  "+05" /*format*/,
20371  1200 /*offset_code (18000/15)*/,
20372  0 /*offset_remainder (18000%15)*/,
20373  0 /*delta_minutes*/,
20374  32767 /*until_year*/,
20375  1 /*until_month*/,
20376  1 /*until_day*/,
20377  0 /*until_time_code (0/15)*/,
20378  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20379  },
20380 
20381 };
20382 
20383 static const char kAtcZoneNameAsia_Qyzylorda[] = "Asia/Qyzylorda";
20384 
20385 const AtcZoneInfo kAtcAllZoneAsia_Qyzylorda = {
20386  kAtcZoneNameAsia_Qyzylorda /*name*/,
20387  0x71282e81 /*zone_id*/,
20388  &kAtcAllZoneContext /*zone_context*/,
20389  12 /*num_eras*/,
20390  kAtcZoneEraAsia_Qyzylorda /*eras*/,
20391  NULL /*target_info*/,
20392 };
20393 
20394 //---------------------------------------------------------------------------
20395 // Zone name: Asia/Riyadh
20396 // Zone Eras: 2
20397 //---------------------------------------------------------------------------
20398 
20399 static const AtcZoneEra kAtcZoneEraAsia_Riyadh[] = {
20400  // 3:06:52 - LMT 1947 Mar 14
20401  {
20402  NULL /*zone_policy*/,
20403  "LMT" /*format*/,
20404  747 /*offset_code (11212/15)*/,
20405  7 /*offset_remainder (11212%15)*/,
20406  0 /*delta_minutes*/,
20407  1947 /*until_year*/,
20408  3 /*until_month*/,
20409  14 /*until_day*/,
20410  0 /*until_time_code (0/15)*/,
20411  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20412  },
20413  // 3:00 - +03
20414  {
20415  NULL /*zone_policy*/,
20416  "+03" /*format*/,
20417  720 /*offset_code (10800/15)*/,
20418  0 /*offset_remainder (10800%15)*/,
20419  0 /*delta_minutes*/,
20420  32767 /*until_year*/,
20421  1 /*until_month*/,
20422  1 /*until_day*/,
20423  0 /*until_time_code (0/15)*/,
20424  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20425  },
20426 
20427 };
20428 
20429 static const char kAtcZoneNameAsia_Riyadh[] = "Asia/Riyadh";
20430 
20431 const AtcZoneInfo kAtcAllZoneAsia_Riyadh = {
20432  kAtcZoneNameAsia_Riyadh /*name*/,
20433  0xcd973d93 /*zone_id*/,
20434  &kAtcAllZoneContext /*zone_context*/,
20435  2 /*num_eras*/,
20436  kAtcZoneEraAsia_Riyadh /*eras*/,
20437  NULL /*target_info*/,
20438 };
20439 
20440 //---------------------------------------------------------------------------
20441 // Zone name: Asia/Sakhalin
20442 // Zone Eras: 9
20443 //---------------------------------------------------------------------------
20444 
20445 static const AtcZoneEra kAtcZoneEraAsia_Sakhalin[] = {
20446  // 9:30:48 - LMT 1905 Aug 23
20447  {
20448  NULL /*zone_policy*/,
20449  "LMT" /*format*/,
20450  2283 /*offset_code (34248/15)*/,
20451  3 /*offset_remainder (34248%15)*/,
20452  0 /*delta_minutes*/,
20453  1905 /*until_year*/,
20454  8 /*until_month*/,
20455  23 /*until_day*/,
20456  0 /*until_time_code (0/15)*/,
20457  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20458  },
20459  // 9:00 - +09 1945 Aug 25
20460  {
20461  NULL /*zone_policy*/,
20462  "+09" /*format*/,
20463  2160 /*offset_code (32400/15)*/,
20464  0 /*offset_remainder (32400%15)*/,
20465  0 /*delta_minutes*/,
20466  1945 /*until_year*/,
20467  8 /*until_month*/,
20468  25 /*until_day*/,
20469  0 /*until_time_code (0/15)*/,
20470  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20471  },
20472  // 11:00 Russia +11/+12 1991 Mar 31 2:00s
20473  {
20474  &kAtcAllZonePolicyRussia /*zone_policy*/,
20475  "+11/+12" /*format*/,
20476  2640 /*offset_code (39600/15)*/,
20477  0 /*offset_remainder (39600%15)*/,
20478  0 /*delta_minutes*/,
20479  1991 /*until_year*/,
20480  3 /*until_month*/,
20481  31 /*until_day*/,
20482  480 /*until_time_code (7200/15)*/,
20483  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20484  },
20485  // 10:00 Russia +10/+11 1992 Jan 19 2:00s
20486  {
20487  &kAtcAllZonePolicyRussia /*zone_policy*/,
20488  "+10/+11" /*format*/,
20489  2400 /*offset_code (36000/15)*/,
20490  0 /*offset_remainder (36000%15)*/,
20491  0 /*delta_minutes*/,
20492  1992 /*until_year*/,
20493  1 /*until_month*/,
20494  19 /*until_day*/,
20495  480 /*until_time_code (7200/15)*/,
20496  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20497  },
20498  // 11:00 Russia +11/+12 1997 Mar lastSun 2:00s
20499  {
20500  &kAtcAllZonePolicyRussia /*zone_policy*/,
20501  "+11/+12" /*format*/,
20502  2640 /*offset_code (39600/15)*/,
20503  0 /*offset_remainder (39600%15)*/,
20504  0 /*delta_minutes*/,
20505  1997 /*until_year*/,
20506  3 /*until_month*/,
20507  30 /*until_day*/,
20508  480 /*until_time_code (7200/15)*/,
20509  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20510  },
20511  // 10:00 Russia +10/+11 2011 Mar 27 2:00s
20512  {
20513  &kAtcAllZonePolicyRussia /*zone_policy*/,
20514  "+10/+11" /*format*/,
20515  2400 /*offset_code (36000/15)*/,
20516  0 /*offset_remainder (36000%15)*/,
20517  0 /*delta_minutes*/,
20518  2011 /*until_year*/,
20519  3 /*until_month*/,
20520  27 /*until_day*/,
20521  480 /*until_time_code (7200/15)*/,
20522  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20523  },
20524  // 11:00 - +11 2014 Oct 26 2:00s
20525  {
20526  NULL /*zone_policy*/,
20527  "+11" /*format*/,
20528  2640 /*offset_code (39600/15)*/,
20529  0 /*offset_remainder (39600%15)*/,
20530  0 /*delta_minutes*/,
20531  2014 /*until_year*/,
20532  10 /*until_month*/,
20533  26 /*until_day*/,
20534  480 /*until_time_code (7200/15)*/,
20535  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20536  },
20537  // 10:00 - +10 2016 Mar 27 2:00s
20538  {
20539  NULL /*zone_policy*/,
20540  "+10" /*format*/,
20541  2400 /*offset_code (36000/15)*/,
20542  0 /*offset_remainder (36000%15)*/,
20543  0 /*delta_minutes*/,
20544  2016 /*until_year*/,
20545  3 /*until_month*/,
20546  27 /*until_day*/,
20547  480 /*until_time_code (7200/15)*/,
20548  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
20549  },
20550  // 11:00 - +11
20551  {
20552  NULL /*zone_policy*/,
20553  "+11" /*format*/,
20554  2640 /*offset_code (39600/15)*/,
20555  0 /*offset_remainder (39600%15)*/,
20556  0 /*delta_minutes*/,
20557  32767 /*until_year*/,
20558  1 /*until_month*/,
20559  1 /*until_day*/,
20560  0 /*until_time_code (0/15)*/,
20561  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20562  },
20563 
20564 };
20565 
20566 static const char kAtcZoneNameAsia_Sakhalin[] = "Asia/Sakhalin";
20567 
20568 const AtcZoneInfo kAtcAllZoneAsia_Sakhalin = {
20569  kAtcZoneNameAsia_Sakhalin /*name*/,
20570  0xf4a1c9bd /*zone_id*/,
20571  &kAtcAllZoneContext /*zone_context*/,
20572  9 /*num_eras*/,
20573  kAtcZoneEraAsia_Sakhalin /*eras*/,
20574  NULL /*target_info*/,
20575 };
20576 
20577 //---------------------------------------------------------------------------
20578 // Zone name: Asia/Samarkand
20579 // Zone Eras: 7
20580 //---------------------------------------------------------------------------
20581 
20582 static const AtcZoneEra kAtcZoneEraAsia_Samarkand[] = {
20583  // 4:27:53 - LMT 1924 May 2
20584  {
20585  NULL /*zone_policy*/,
20586  "LMT" /*format*/,
20587  1071 /*offset_code (16073/15)*/,
20588  8 /*offset_remainder (16073%15)*/,
20589  0 /*delta_minutes*/,
20590  1924 /*until_year*/,
20591  5 /*until_month*/,
20592  2 /*until_day*/,
20593  0 /*until_time_code (0/15)*/,
20594  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20595  },
20596  // 4:00 - +04 1930 Jun 21
20597  {
20598  NULL /*zone_policy*/,
20599  "+04" /*format*/,
20600  960 /*offset_code (14400/15)*/,
20601  0 /*offset_remainder (14400%15)*/,
20602  0 /*delta_minutes*/,
20603  1930 /*until_year*/,
20604  6 /*until_month*/,
20605  21 /*until_day*/,
20606  0 /*until_time_code (0/15)*/,
20607  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20608  },
20609  // 5:00 - +05 1981 Apr 1
20610  {
20611  NULL /*zone_policy*/,
20612  "+05" /*format*/,
20613  1200 /*offset_code (18000/15)*/,
20614  0 /*offset_remainder (18000%15)*/,
20615  0 /*delta_minutes*/,
20616  1981 /*until_year*/,
20617  4 /*until_month*/,
20618  1 /*until_day*/,
20619  0 /*until_time_code (0/15)*/,
20620  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20621  },
20622  // 5:00 1:00 +06 1981 Oct 1
20623  {
20624  NULL /*zone_policy*/,
20625  "+06" /*format*/,
20626  1200 /*offset_code (18000/15)*/,
20627  0 /*offset_remainder (18000%15)*/,
20628  60 /*delta_minutes*/,
20629  1981 /*until_year*/,
20630  10 /*until_month*/,
20631  1 /*until_day*/,
20632  0 /*until_time_code (0/15)*/,
20633  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20634  },
20635  // 6:00 - +06 1982 Apr 1
20636  {
20637  NULL /*zone_policy*/,
20638  "+06" /*format*/,
20639  1440 /*offset_code (21600/15)*/,
20640  0 /*offset_remainder (21600%15)*/,
20641  0 /*delta_minutes*/,
20642  1982 /*until_year*/,
20643  4 /*until_month*/,
20644  1 /*until_day*/,
20645  0 /*until_time_code (0/15)*/,
20646  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20647  },
20648  // 5:00 RussiaAsia +05/+06 1992
20649  {
20650  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
20651  "+05/+06" /*format*/,
20652  1200 /*offset_code (18000/15)*/,
20653  0 /*offset_remainder (18000%15)*/,
20654  0 /*delta_minutes*/,
20655  1992 /*until_year*/,
20656  1 /*until_month*/,
20657  1 /*until_day*/,
20658  0 /*until_time_code (0/15)*/,
20659  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20660  },
20661  // 5:00 - +05
20662  {
20663  NULL /*zone_policy*/,
20664  "+05" /*format*/,
20665  1200 /*offset_code (18000/15)*/,
20666  0 /*offset_remainder (18000%15)*/,
20667  0 /*delta_minutes*/,
20668  32767 /*until_year*/,
20669  1 /*until_month*/,
20670  1 /*until_day*/,
20671  0 /*until_time_code (0/15)*/,
20672  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20673  },
20674 
20675 };
20676 
20677 static const char kAtcZoneNameAsia_Samarkand[] = "Asia/Samarkand";
20678 
20679 const AtcZoneInfo kAtcAllZoneAsia_Samarkand = {
20680  kAtcZoneNameAsia_Samarkand /*name*/,
20681  0x13ae5104 /*zone_id*/,
20682  &kAtcAllZoneContext /*zone_context*/,
20683  7 /*num_eras*/,
20684  kAtcZoneEraAsia_Samarkand /*eras*/,
20685  NULL /*target_info*/,
20686 };
20687 
20688 //---------------------------------------------------------------------------
20689 // Zone name: Asia/Seoul
20690 // Zone Eras: 6
20691 //---------------------------------------------------------------------------
20692 
20693 static const AtcZoneEra kAtcZoneEraAsia_Seoul[] = {
20694  // 8:27:52 - LMT 1908 Apr 1
20695  {
20696  NULL /*zone_policy*/,
20697  "LMT" /*format*/,
20698  2031 /*offset_code (30472/15)*/,
20699  7 /*offset_remainder (30472%15)*/,
20700  0 /*delta_minutes*/,
20701  1908 /*until_year*/,
20702  4 /*until_month*/,
20703  1 /*until_day*/,
20704  0 /*until_time_code (0/15)*/,
20705  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20706  },
20707  // 8:30 - KST 1912 Jan 1
20708  {
20709  NULL /*zone_policy*/,
20710  "KST" /*format*/,
20711  2040 /*offset_code (30600/15)*/,
20712  0 /*offset_remainder (30600%15)*/,
20713  0 /*delta_minutes*/,
20714  1912 /*until_year*/,
20715  1 /*until_month*/,
20716  1 /*until_day*/,
20717  0 /*until_time_code (0/15)*/,
20718  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20719  },
20720  // 9:00 - JST 1945 Sep 8
20721  {
20722  NULL /*zone_policy*/,
20723  "JST" /*format*/,
20724  2160 /*offset_code (32400/15)*/,
20725  0 /*offset_remainder (32400%15)*/,
20726  0 /*delta_minutes*/,
20727  1945 /*until_year*/,
20728  9 /*until_month*/,
20729  8 /*until_day*/,
20730  0 /*until_time_code (0/15)*/,
20731  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20732  },
20733  // 9:00 ROK K%sT 1954 Mar 21
20734  {
20735  &kAtcAllZonePolicyROK /*zone_policy*/,
20736  "K%T" /*format*/,
20737  2160 /*offset_code (32400/15)*/,
20738  0 /*offset_remainder (32400%15)*/,
20739  0 /*delta_minutes*/,
20740  1954 /*until_year*/,
20741  3 /*until_month*/,
20742  21 /*until_day*/,
20743  0 /*until_time_code (0/15)*/,
20744  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20745  },
20746  // 8:30 ROK K%sT 1961 Aug 10
20747  {
20748  &kAtcAllZonePolicyROK /*zone_policy*/,
20749  "K%T" /*format*/,
20750  2040 /*offset_code (30600/15)*/,
20751  0 /*offset_remainder (30600%15)*/,
20752  0 /*delta_minutes*/,
20753  1961 /*until_year*/,
20754  8 /*until_month*/,
20755  10 /*until_day*/,
20756  0 /*until_time_code (0/15)*/,
20757  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20758  },
20759  // 9:00 ROK K%sT
20760  {
20761  &kAtcAllZonePolicyROK /*zone_policy*/,
20762  "K%T" /*format*/,
20763  2160 /*offset_code (32400/15)*/,
20764  0 /*offset_remainder (32400%15)*/,
20765  0 /*delta_minutes*/,
20766  32767 /*until_year*/,
20767  1 /*until_month*/,
20768  1 /*until_day*/,
20769  0 /*until_time_code (0/15)*/,
20770  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20771  },
20772 
20773 };
20774 
20775 static const char kAtcZoneNameAsia_Seoul[] = "Asia/Seoul";
20776 
20777 const AtcZoneInfo kAtcAllZoneAsia_Seoul = {
20778  kAtcZoneNameAsia_Seoul /*name*/,
20779  0x15ce82da /*zone_id*/,
20780  &kAtcAllZoneContext /*zone_context*/,
20781  6 /*num_eras*/,
20782  kAtcZoneEraAsia_Seoul /*eras*/,
20783  NULL /*target_info*/,
20784 };
20785 
20786 //---------------------------------------------------------------------------
20787 // Zone name: Asia/Shanghai
20788 // Zone Eras: 3
20789 //---------------------------------------------------------------------------
20790 
20791 static const AtcZoneEra kAtcZoneEraAsia_Shanghai[] = {
20792  // 8:05:43 - LMT 1901
20793  {
20794  NULL /*zone_policy*/,
20795  "LMT" /*format*/,
20796  1942 /*offset_code (29143/15)*/,
20797  13 /*offset_remainder (29143%15)*/,
20798  0 /*delta_minutes*/,
20799  1901 /*until_year*/,
20800  1 /*until_month*/,
20801  1 /*until_day*/,
20802  0 /*until_time_code (0/15)*/,
20803  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20804  },
20805  // 8:00 Shang C%sT 1949 May 28
20806  {
20807  &kAtcAllZonePolicyShang /*zone_policy*/,
20808  "C%T" /*format*/,
20809  1920 /*offset_code (28800/15)*/,
20810  0 /*offset_remainder (28800%15)*/,
20811  0 /*delta_minutes*/,
20812  1949 /*until_year*/,
20813  5 /*until_month*/,
20814  28 /*until_day*/,
20815  0 /*until_time_code (0/15)*/,
20816  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20817  },
20818  // 8:00 PRC C%sT
20819  {
20820  &kAtcAllZonePolicyPRC /*zone_policy*/,
20821  "C%T" /*format*/,
20822  1920 /*offset_code (28800/15)*/,
20823  0 /*offset_remainder (28800%15)*/,
20824  0 /*delta_minutes*/,
20825  32767 /*until_year*/,
20826  1 /*until_month*/,
20827  1 /*until_day*/,
20828  0 /*until_time_code (0/15)*/,
20829  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20830  },
20831 
20832 };
20833 
20834 static const char kAtcZoneNameAsia_Shanghai[] = "Asia/Shanghai";
20835 
20836 const AtcZoneInfo kAtcAllZoneAsia_Shanghai = {
20837  kAtcZoneNameAsia_Shanghai /*name*/,
20838  0xf895a7f5 /*zone_id*/,
20839  &kAtcAllZoneContext /*zone_context*/,
20840  3 /*num_eras*/,
20841  kAtcZoneEraAsia_Shanghai /*eras*/,
20842  NULL /*target_info*/,
20843 };
20844 
20845 //---------------------------------------------------------------------------
20846 // Zone name: Asia/Singapore
20847 // Zone Eras: 9
20848 //---------------------------------------------------------------------------
20849 
20850 static const AtcZoneEra kAtcZoneEraAsia_Singapore[] = {
20851  // 6:55:25 - LMT 1901 Jan 1
20852  {
20853  NULL /*zone_policy*/,
20854  "LMT" /*format*/,
20855  1661 /*offset_code (24925/15)*/,
20856  10 /*offset_remainder (24925%15)*/,
20857  0 /*delta_minutes*/,
20858  1901 /*until_year*/,
20859  1 /*until_month*/,
20860  1 /*until_day*/,
20861  0 /*until_time_code (0/15)*/,
20862  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20863  },
20864  // 6:55:25 - SMT 1905 Jun 1
20865  {
20866  NULL /*zone_policy*/,
20867  "SMT" /*format*/,
20868  1661 /*offset_code (24925/15)*/,
20869  10 /*offset_remainder (24925%15)*/,
20870  0 /*delta_minutes*/,
20871  1905 /*until_year*/,
20872  6 /*until_month*/,
20873  1 /*until_day*/,
20874  0 /*until_time_code (0/15)*/,
20875  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20876  },
20877  // 7:00 - +07 1933 Jan 1
20878  {
20879  NULL /*zone_policy*/,
20880  "+07" /*format*/,
20881  1680 /*offset_code (25200/15)*/,
20882  0 /*offset_remainder (25200%15)*/,
20883  0 /*delta_minutes*/,
20884  1933 /*until_year*/,
20885  1 /*until_month*/,
20886  1 /*until_day*/,
20887  0 /*until_time_code (0/15)*/,
20888  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20889  },
20890  // 7:00 0:20 +0720 1936 Jan 1
20891  {
20892  NULL /*zone_policy*/,
20893  "+0720" /*format*/,
20894  1680 /*offset_code (25200/15)*/,
20895  0 /*offset_remainder (25200%15)*/,
20896  20 /*delta_minutes*/,
20897  1936 /*until_year*/,
20898  1 /*until_month*/,
20899  1 /*until_day*/,
20900  0 /*until_time_code (0/15)*/,
20901  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20902  },
20903  // 7:20 - +0720 1941 Sep 1
20904  {
20905  NULL /*zone_policy*/,
20906  "+0720" /*format*/,
20907  1760 /*offset_code (26400/15)*/,
20908  0 /*offset_remainder (26400%15)*/,
20909  0 /*delta_minutes*/,
20910  1941 /*until_year*/,
20911  9 /*until_month*/,
20912  1 /*until_day*/,
20913  0 /*until_time_code (0/15)*/,
20914  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20915  },
20916  // 7:30 - +0730 1942 Feb 16
20917  {
20918  NULL /*zone_policy*/,
20919  "+0730" /*format*/,
20920  1800 /*offset_code (27000/15)*/,
20921  0 /*offset_remainder (27000%15)*/,
20922  0 /*delta_minutes*/,
20923  1942 /*until_year*/,
20924  2 /*until_month*/,
20925  16 /*until_day*/,
20926  0 /*until_time_code (0/15)*/,
20927  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20928  },
20929  // 9:00 - +09 1945 Sep 12
20930  {
20931  NULL /*zone_policy*/,
20932  "+09" /*format*/,
20933  2160 /*offset_code (32400/15)*/,
20934  0 /*offset_remainder (32400%15)*/,
20935  0 /*delta_minutes*/,
20936  1945 /*until_year*/,
20937  9 /*until_month*/,
20938  12 /*until_day*/,
20939  0 /*until_time_code (0/15)*/,
20940  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20941  },
20942  // 7:30 - +0730 1981 Dec 31 16:00u
20943  {
20944  NULL /*zone_policy*/,
20945  "+0730" /*format*/,
20946  1800 /*offset_code (27000/15)*/,
20947  0 /*offset_remainder (27000%15)*/,
20948  0 /*delta_minutes*/,
20949  1981 /*until_year*/,
20950  12 /*until_month*/,
20951  31 /*until_day*/,
20952  3840 /*until_time_code (57600/15)*/,
20953  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
20954  },
20955  // 8:00 - +08
20956  {
20957  NULL /*zone_policy*/,
20958  "+08" /*format*/,
20959  1920 /*offset_code (28800/15)*/,
20960  0 /*offset_remainder (28800%15)*/,
20961  0 /*delta_minutes*/,
20962  32767 /*until_year*/,
20963  1 /*until_month*/,
20964  1 /*until_day*/,
20965  0 /*until_time_code (0/15)*/,
20966  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
20967  },
20968 
20969 };
20970 
20971 static const char kAtcZoneNameAsia_Singapore[] = "Asia/Singapore";
20972 
20973 const AtcZoneInfo kAtcAllZoneAsia_Singapore = {
20974  kAtcZoneNameAsia_Singapore /*name*/,
20975  0xcf8581fa /*zone_id*/,
20976  &kAtcAllZoneContext /*zone_context*/,
20977  9 /*num_eras*/,
20978  kAtcZoneEraAsia_Singapore /*eras*/,
20979  NULL /*target_info*/,
20980 };
20981 
20982 //---------------------------------------------------------------------------
20983 // Zone name: Asia/Srednekolymsk
20984 // Zone Eras: 7
20985 //---------------------------------------------------------------------------
20986 
20987 static const AtcZoneEra kAtcZoneEraAsia_Srednekolymsk[] = {
20988  // 10:14:52 - LMT 1924 May 2
20989  {
20990  NULL /*zone_policy*/,
20991  "LMT" /*format*/,
20992  2459 /*offset_code (36892/15)*/,
20993  7 /*offset_remainder (36892%15)*/,
20994  0 /*delta_minutes*/,
20995  1924 /*until_year*/,
20996  5 /*until_month*/,
20997  2 /*until_day*/,
20998  0 /*until_time_code (0/15)*/,
20999  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21000  },
21001  // 10:00 - +10 1930 Jun 21
21002  {
21003  NULL /*zone_policy*/,
21004  "+10" /*format*/,
21005  2400 /*offset_code (36000/15)*/,
21006  0 /*offset_remainder (36000%15)*/,
21007  0 /*delta_minutes*/,
21008  1930 /*until_year*/,
21009  6 /*until_month*/,
21010  21 /*until_day*/,
21011  0 /*until_time_code (0/15)*/,
21012  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21013  },
21014  // 11:00 Russia +11/+12 1991 Mar 31 2:00s
21015  {
21016  &kAtcAllZonePolicyRussia /*zone_policy*/,
21017  "+11/+12" /*format*/,
21018  2640 /*offset_code (39600/15)*/,
21019  0 /*offset_remainder (39600%15)*/,
21020  0 /*delta_minutes*/,
21021  1991 /*until_year*/,
21022  3 /*until_month*/,
21023  31 /*until_day*/,
21024  480 /*until_time_code (7200/15)*/,
21025  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21026  },
21027  // 10:00 Russia +10/+11 1992 Jan 19 2:00s
21028  {
21029  &kAtcAllZonePolicyRussia /*zone_policy*/,
21030  "+10/+11" /*format*/,
21031  2400 /*offset_code (36000/15)*/,
21032  0 /*offset_remainder (36000%15)*/,
21033  0 /*delta_minutes*/,
21034  1992 /*until_year*/,
21035  1 /*until_month*/,
21036  19 /*until_day*/,
21037  480 /*until_time_code (7200/15)*/,
21038  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21039  },
21040  // 11:00 Russia +11/+12 2011 Mar 27 2:00s
21041  {
21042  &kAtcAllZonePolicyRussia /*zone_policy*/,
21043  "+11/+12" /*format*/,
21044  2640 /*offset_code (39600/15)*/,
21045  0 /*offset_remainder (39600%15)*/,
21046  0 /*delta_minutes*/,
21047  2011 /*until_year*/,
21048  3 /*until_month*/,
21049  27 /*until_day*/,
21050  480 /*until_time_code (7200/15)*/,
21051  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21052  },
21053  // 12:00 - +12 2014 Oct 26 2:00s
21054  {
21055  NULL /*zone_policy*/,
21056  "+12" /*format*/,
21057  2880 /*offset_code (43200/15)*/,
21058  0 /*offset_remainder (43200%15)*/,
21059  0 /*delta_minutes*/,
21060  2014 /*until_year*/,
21061  10 /*until_month*/,
21062  26 /*until_day*/,
21063  480 /*until_time_code (7200/15)*/,
21064  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21065  },
21066  // 11:00 - +11
21067  {
21068  NULL /*zone_policy*/,
21069  "+11" /*format*/,
21070  2640 /*offset_code (39600/15)*/,
21071  0 /*offset_remainder (39600%15)*/,
21072  0 /*delta_minutes*/,
21073  32767 /*until_year*/,
21074  1 /*until_month*/,
21075  1 /*until_day*/,
21076  0 /*until_time_code (0/15)*/,
21077  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21078  },
21079 
21080 };
21081 
21082 static const char kAtcZoneNameAsia_Srednekolymsk[] = "Asia/Srednekolymsk";
21083 
21084 const AtcZoneInfo kAtcAllZoneAsia_Srednekolymsk = {
21085  kAtcZoneNameAsia_Srednekolymsk /*name*/,
21086  0xbf8e337d /*zone_id*/,
21087  &kAtcAllZoneContext /*zone_context*/,
21088  7 /*num_eras*/,
21089  kAtcZoneEraAsia_Srednekolymsk /*eras*/,
21090  NULL /*target_info*/,
21091 };
21092 
21093 //---------------------------------------------------------------------------
21094 // Zone name: Asia/Taipei
21095 // Zone Eras: 4
21096 //---------------------------------------------------------------------------
21097 
21098 static const AtcZoneEra kAtcZoneEraAsia_Taipei[] = {
21099  // 8:06:00 - LMT 1896 Jan 1
21100  {
21101  NULL /*zone_policy*/,
21102  "LMT" /*format*/,
21103  1944 /*offset_code (29160/15)*/,
21104  0 /*offset_remainder (29160%15)*/,
21105  0 /*delta_minutes*/,
21106  1896 /*until_year*/,
21107  1 /*until_month*/,
21108  1 /*until_day*/,
21109  0 /*until_time_code (0/15)*/,
21110  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21111  },
21112  // 8:00 - CST 1937 Oct 1
21113  {
21114  NULL /*zone_policy*/,
21115  "CST" /*format*/,
21116  1920 /*offset_code (28800/15)*/,
21117  0 /*offset_remainder (28800%15)*/,
21118  0 /*delta_minutes*/,
21119  1937 /*until_year*/,
21120  10 /*until_month*/,
21121  1 /*until_day*/,
21122  0 /*until_time_code (0/15)*/,
21123  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21124  },
21125  // 9:00 - JST 1945 Sep 21 1:00
21126  {
21127  NULL /*zone_policy*/,
21128  "JST" /*format*/,
21129  2160 /*offset_code (32400/15)*/,
21130  0 /*offset_remainder (32400%15)*/,
21131  0 /*delta_minutes*/,
21132  1945 /*until_year*/,
21133  9 /*until_month*/,
21134  21 /*until_day*/,
21135  240 /*until_time_code (3600/15)*/,
21136  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21137  },
21138  // 8:00 Taiwan C%sT
21139  {
21140  &kAtcAllZonePolicyTaiwan /*zone_policy*/,
21141  "C%T" /*format*/,
21142  1920 /*offset_code (28800/15)*/,
21143  0 /*offset_remainder (28800%15)*/,
21144  0 /*delta_minutes*/,
21145  32767 /*until_year*/,
21146  1 /*until_month*/,
21147  1 /*until_day*/,
21148  0 /*until_time_code (0/15)*/,
21149  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21150  },
21151 
21152 };
21153 
21154 static const char kAtcZoneNameAsia_Taipei[] = "Asia/Taipei";
21155 
21156 const AtcZoneInfo kAtcAllZoneAsia_Taipei = {
21157  kAtcZoneNameAsia_Taipei /*name*/,
21158  0xd1a844ae /*zone_id*/,
21159  &kAtcAllZoneContext /*zone_context*/,
21160  4 /*num_eras*/,
21161  kAtcZoneEraAsia_Taipei /*eras*/,
21162  NULL /*target_info*/,
21163 };
21164 
21165 //---------------------------------------------------------------------------
21166 // Zone name: Asia/Tashkent
21167 // Zone Eras: 5
21168 //---------------------------------------------------------------------------
21169 
21170 static const AtcZoneEra kAtcZoneEraAsia_Tashkent[] = {
21171  // 4:37:11 - LMT 1924 May 2
21172  {
21173  NULL /*zone_policy*/,
21174  "LMT" /*format*/,
21175  1108 /*offset_code (16631/15)*/,
21176  11 /*offset_remainder (16631%15)*/,
21177  0 /*delta_minutes*/,
21178  1924 /*until_year*/,
21179  5 /*until_month*/,
21180  2 /*until_day*/,
21181  0 /*until_time_code (0/15)*/,
21182  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21183  },
21184  // 5:00 - +05 1930 Jun 21
21185  {
21186  NULL /*zone_policy*/,
21187  "+05" /*format*/,
21188  1200 /*offset_code (18000/15)*/,
21189  0 /*offset_remainder (18000%15)*/,
21190  0 /*delta_minutes*/,
21191  1930 /*until_year*/,
21192  6 /*until_month*/,
21193  21 /*until_day*/,
21194  0 /*until_time_code (0/15)*/,
21195  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21196  },
21197  // 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00
21198  {
21199  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
21200  "+06/+07" /*format*/,
21201  1440 /*offset_code (21600/15)*/,
21202  0 /*offset_remainder (21600%15)*/,
21203  0 /*delta_minutes*/,
21204  1991 /*until_year*/,
21205  3 /*until_month*/,
21206  31 /*until_day*/,
21207  480 /*until_time_code (7200/15)*/,
21208  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21209  },
21210  // 5:00 RussiaAsia +05/+06 1992
21211  {
21212  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
21213  "+05/+06" /*format*/,
21214  1200 /*offset_code (18000/15)*/,
21215  0 /*offset_remainder (18000%15)*/,
21216  0 /*delta_minutes*/,
21217  1992 /*until_year*/,
21218  1 /*until_month*/,
21219  1 /*until_day*/,
21220  0 /*until_time_code (0/15)*/,
21221  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21222  },
21223  // 5:00 - +05
21224  {
21225  NULL /*zone_policy*/,
21226  "+05" /*format*/,
21227  1200 /*offset_code (18000/15)*/,
21228  0 /*offset_remainder (18000%15)*/,
21229  0 /*delta_minutes*/,
21230  32767 /*until_year*/,
21231  1 /*until_month*/,
21232  1 /*until_day*/,
21233  0 /*until_time_code (0/15)*/,
21234  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21235  },
21236 
21237 };
21238 
21239 static const char kAtcZoneNameAsia_Tashkent[] = "Asia/Tashkent";
21240 
21241 const AtcZoneInfo kAtcAllZoneAsia_Tashkent = {
21242  kAtcZoneNameAsia_Tashkent /*name*/,
21243  0xf3924254 /*zone_id*/,
21244  &kAtcAllZoneContext /*zone_context*/,
21245  5 /*num_eras*/,
21246  kAtcZoneEraAsia_Tashkent /*eras*/,
21247  NULL /*target_info*/,
21248 };
21249 
21250 //---------------------------------------------------------------------------
21251 // Zone name: Asia/Tbilisi
21252 // Zone Eras: 11
21253 //---------------------------------------------------------------------------
21254 
21255 static const AtcZoneEra kAtcZoneEraAsia_Tbilisi[] = {
21256  // 2:59:11 - LMT 1880
21257  {
21258  NULL /*zone_policy*/,
21259  "LMT" /*format*/,
21260  716 /*offset_code (10751/15)*/,
21261  11 /*offset_remainder (10751%15)*/,
21262  0 /*delta_minutes*/,
21263  1880 /*until_year*/,
21264  1 /*until_month*/,
21265  1 /*until_day*/,
21266  0 /*until_time_code (0/15)*/,
21267  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21268  },
21269  // 2:59:11 - TBMT 1924 May 2
21270  {
21271  NULL /*zone_policy*/,
21272  "TBMT" /*format*/,
21273  716 /*offset_code (10751/15)*/,
21274  11 /*offset_remainder (10751%15)*/,
21275  0 /*delta_minutes*/,
21276  1924 /*until_year*/,
21277  5 /*until_month*/,
21278  2 /*until_day*/,
21279  0 /*until_time_code (0/15)*/,
21280  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21281  },
21282  // 3:00 - +03 1957 Mar
21283  {
21284  NULL /*zone_policy*/,
21285  "+03" /*format*/,
21286  720 /*offset_code (10800/15)*/,
21287  0 /*offset_remainder (10800%15)*/,
21288  0 /*delta_minutes*/,
21289  1957 /*until_year*/,
21290  3 /*until_month*/,
21291  1 /*until_day*/,
21292  0 /*until_time_code (0/15)*/,
21293  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21294  },
21295  // 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
21296  {
21297  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
21298  "+04/+05" /*format*/,
21299  960 /*offset_code (14400/15)*/,
21300  0 /*offset_remainder (14400%15)*/,
21301  0 /*delta_minutes*/,
21302  1991 /*until_year*/,
21303  3 /*until_month*/,
21304  31 /*until_day*/,
21305  480 /*until_time_code (7200/15)*/,
21306  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21307  },
21308  // 3:00 RussiaAsia +03/+04 1992
21309  {
21310  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
21311  "+03/+04" /*format*/,
21312  720 /*offset_code (10800/15)*/,
21313  0 /*offset_remainder (10800%15)*/,
21314  0 /*delta_minutes*/,
21315  1992 /*until_year*/,
21316  1 /*until_month*/,
21317  1 /*until_day*/,
21318  0 /*until_time_code (0/15)*/,
21319  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21320  },
21321  // 3:00 E-EurAsia +03/+04 1994 Sep lastSun
21322  {
21323  &kAtcAllZonePolicyE_EurAsia /*zone_policy*/,
21324  "+03/+04" /*format*/,
21325  720 /*offset_code (10800/15)*/,
21326  0 /*offset_remainder (10800%15)*/,
21327  0 /*delta_minutes*/,
21328  1994 /*until_year*/,
21329  9 /*until_month*/,
21330  25 /*until_day*/,
21331  0 /*until_time_code (0/15)*/,
21332  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21333  },
21334  // 4:00 E-EurAsia +04/+05 1996 Oct lastSun
21335  {
21336  &kAtcAllZonePolicyE_EurAsia /*zone_policy*/,
21337  "+04/+05" /*format*/,
21338  960 /*offset_code (14400/15)*/,
21339  0 /*offset_remainder (14400%15)*/,
21340  0 /*delta_minutes*/,
21341  1996 /*until_year*/,
21342  10 /*until_month*/,
21343  27 /*until_day*/,
21344  0 /*until_time_code (0/15)*/,
21345  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21346  },
21347  // 4:00 1:00 +05 1997 Mar lastSun
21348  {
21349  NULL /*zone_policy*/,
21350  "+05" /*format*/,
21351  960 /*offset_code (14400/15)*/,
21352  0 /*offset_remainder (14400%15)*/,
21353  60 /*delta_minutes*/,
21354  1997 /*until_year*/,
21355  3 /*until_month*/,
21356  30 /*until_day*/,
21357  0 /*until_time_code (0/15)*/,
21358  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21359  },
21360  // 4:00 E-EurAsia +04/+05 2004 Jun 27
21361  {
21362  &kAtcAllZonePolicyE_EurAsia /*zone_policy*/,
21363  "+04/+05" /*format*/,
21364  960 /*offset_code (14400/15)*/,
21365  0 /*offset_remainder (14400%15)*/,
21366  0 /*delta_minutes*/,
21367  2004 /*until_year*/,
21368  6 /*until_month*/,
21369  27 /*until_day*/,
21370  0 /*until_time_code (0/15)*/,
21371  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21372  },
21373  // 3:00 RussiaAsia +03/+04 2005 Mar lastSun 2:00
21374  {
21375  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
21376  "+03/+04" /*format*/,
21377  720 /*offset_code (10800/15)*/,
21378  0 /*offset_remainder (10800%15)*/,
21379  0 /*delta_minutes*/,
21380  2005 /*until_year*/,
21381  3 /*until_month*/,
21382  27 /*until_day*/,
21383  480 /*until_time_code (7200/15)*/,
21384  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21385  },
21386  // 4:00 - +04
21387  {
21388  NULL /*zone_policy*/,
21389  "+04" /*format*/,
21390  960 /*offset_code (14400/15)*/,
21391  0 /*offset_remainder (14400%15)*/,
21392  0 /*delta_minutes*/,
21393  32767 /*until_year*/,
21394  1 /*until_month*/,
21395  1 /*until_day*/,
21396  0 /*until_time_code (0/15)*/,
21397  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21398  },
21399 
21400 };
21401 
21402 static const char kAtcZoneNameAsia_Tbilisi[] = "Asia/Tbilisi";
21403 
21404 const AtcZoneInfo kAtcAllZoneAsia_Tbilisi = {
21405  kAtcZoneNameAsia_Tbilisi /*name*/,
21406  0x0903e442 /*zone_id*/,
21407  &kAtcAllZoneContext /*zone_context*/,
21408  11 /*num_eras*/,
21409  kAtcZoneEraAsia_Tbilisi /*eras*/,
21410  NULL /*target_info*/,
21411 };
21412 
21413 //---------------------------------------------------------------------------
21414 // Zone name: Asia/Tehran
21415 // Zone Eras: 5
21416 //---------------------------------------------------------------------------
21417 
21418 static const AtcZoneEra kAtcZoneEraAsia_Tehran[] = {
21419  // 3:25:44 - LMT 1916
21420  {
21421  NULL /*zone_policy*/,
21422  "LMT" /*format*/,
21423  822 /*offset_code (12344/15)*/,
21424  14 /*offset_remainder (12344%15)*/,
21425  0 /*delta_minutes*/,
21426  1916 /*until_year*/,
21427  1 /*until_month*/,
21428  1 /*until_day*/,
21429  0 /*until_time_code (0/15)*/,
21430  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21431  },
21432  // 3:25:44 - TMT 1935 Jun 13
21433  {
21434  NULL /*zone_policy*/,
21435  "TMT" /*format*/,
21436  822 /*offset_code (12344/15)*/,
21437  14 /*offset_remainder (12344%15)*/,
21438  0 /*delta_minutes*/,
21439  1935 /*until_year*/,
21440  6 /*until_month*/,
21441  13 /*until_day*/,
21442  0 /*until_time_code (0/15)*/,
21443  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21444  },
21445  // 3:30 Iran +0330/+0430 1977 Oct 20 24:00
21446  {
21447  &kAtcAllZonePolicyIran /*zone_policy*/,
21448  "+0330/+0430" /*format*/,
21449  840 /*offset_code (12600/15)*/,
21450  0 /*offset_remainder (12600%15)*/,
21451  0 /*delta_minutes*/,
21452  1977 /*until_year*/,
21453  10 /*until_month*/,
21454  20 /*until_day*/,
21455  5760 /*until_time_code (86400/15)*/,
21456  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21457  },
21458  // 4:00 Iran +04/+05 1979
21459  {
21460  &kAtcAllZonePolicyIran /*zone_policy*/,
21461  "+04/+05" /*format*/,
21462  960 /*offset_code (14400/15)*/,
21463  0 /*offset_remainder (14400%15)*/,
21464  0 /*delta_minutes*/,
21465  1979 /*until_year*/,
21466  1 /*until_month*/,
21467  1 /*until_day*/,
21468  0 /*until_time_code (0/15)*/,
21469  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21470  },
21471  // 3:30 Iran +0330/+0430
21472  {
21473  &kAtcAllZonePolicyIran /*zone_policy*/,
21474  "+0330/+0430" /*format*/,
21475  840 /*offset_code (12600/15)*/,
21476  0 /*offset_remainder (12600%15)*/,
21477  0 /*delta_minutes*/,
21478  32767 /*until_year*/,
21479  1 /*until_month*/,
21480  1 /*until_day*/,
21481  0 /*until_time_code (0/15)*/,
21482  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21483  },
21484 
21485 };
21486 
21487 static const char kAtcZoneNameAsia_Tehran[] = "Asia/Tehran";
21488 
21489 const AtcZoneInfo kAtcAllZoneAsia_Tehran = {
21490  kAtcZoneNameAsia_Tehran /*name*/,
21491  0xd1f02254 /*zone_id*/,
21492  &kAtcAllZoneContext /*zone_context*/,
21493  5 /*num_eras*/,
21494  kAtcZoneEraAsia_Tehran /*eras*/,
21495  NULL /*target_info*/,
21496 };
21497 
21498 //---------------------------------------------------------------------------
21499 // Zone name: Asia/Thimphu
21500 // Zone Eras: 3
21501 //---------------------------------------------------------------------------
21502 
21503 static const AtcZoneEra kAtcZoneEraAsia_Thimphu[] = {
21504  // 5:58:36 - LMT 1947 Aug 15
21505  {
21506  NULL /*zone_policy*/,
21507  "LMT" /*format*/,
21508  1434 /*offset_code (21516/15)*/,
21509  6 /*offset_remainder (21516%15)*/,
21510  0 /*delta_minutes*/,
21511  1947 /*until_year*/,
21512  8 /*until_month*/,
21513  15 /*until_day*/,
21514  0 /*until_time_code (0/15)*/,
21515  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21516  },
21517  // 5:30 - +0530 1987 Oct
21518  {
21519  NULL /*zone_policy*/,
21520  "+0530" /*format*/,
21521  1320 /*offset_code (19800/15)*/,
21522  0 /*offset_remainder (19800%15)*/,
21523  0 /*delta_minutes*/,
21524  1987 /*until_year*/,
21525  10 /*until_month*/,
21526  1 /*until_day*/,
21527  0 /*until_time_code (0/15)*/,
21528  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21529  },
21530  // 6:00 - +06
21531  {
21532  NULL /*zone_policy*/,
21533  "+06" /*format*/,
21534  1440 /*offset_code (21600/15)*/,
21535  0 /*offset_remainder (21600%15)*/,
21536  0 /*delta_minutes*/,
21537  32767 /*until_year*/,
21538  1 /*until_month*/,
21539  1 /*until_day*/,
21540  0 /*until_time_code (0/15)*/,
21541  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21542  },
21543 
21544 };
21545 
21546 static const char kAtcZoneNameAsia_Thimphu[] = "Asia/Thimphu";
21547 
21548 const AtcZoneInfo kAtcAllZoneAsia_Thimphu = {
21549  kAtcZoneNameAsia_Thimphu /*name*/,
21550  0x170380d1 /*zone_id*/,
21551  &kAtcAllZoneContext /*zone_context*/,
21552  3 /*num_eras*/,
21553  kAtcZoneEraAsia_Thimphu /*eras*/,
21554  NULL /*target_info*/,
21555 };
21556 
21557 //---------------------------------------------------------------------------
21558 // Zone name: Asia/Tokyo
21559 // Zone Eras: 2
21560 //---------------------------------------------------------------------------
21561 
21562 static const AtcZoneEra kAtcZoneEraAsia_Tokyo[] = {
21563  // 9:18:59 - LMT 1887 Dec 31 15:00u
21564  {
21565  NULL /*zone_policy*/,
21566  "LMT" /*format*/,
21567  2235 /*offset_code (33539/15)*/,
21568  14 /*offset_remainder (33539%15)*/,
21569  0 /*delta_minutes*/,
21570  1887 /*until_year*/,
21571  12 /*until_month*/,
21572  31 /*until_day*/,
21573  3600 /*until_time_code (54000/15)*/,
21574  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
21575  },
21576  // 9:00 Japan J%sT
21577  {
21578  &kAtcAllZonePolicyJapan /*zone_policy*/,
21579  "J%T" /*format*/,
21580  2160 /*offset_code (32400/15)*/,
21581  0 /*offset_remainder (32400%15)*/,
21582  0 /*delta_minutes*/,
21583  32767 /*until_year*/,
21584  1 /*until_month*/,
21585  1 /*until_day*/,
21586  0 /*until_time_code (0/15)*/,
21587  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21588  },
21589 
21590 };
21591 
21592 static const char kAtcZoneNameAsia_Tokyo[] = "Asia/Tokyo";
21593 
21594 const AtcZoneInfo kAtcAllZoneAsia_Tokyo = {
21595  kAtcZoneNameAsia_Tokyo /*name*/,
21596  0x15e606a8 /*zone_id*/,
21597  &kAtcAllZoneContext /*zone_context*/,
21598  2 /*num_eras*/,
21599  kAtcZoneEraAsia_Tokyo /*eras*/,
21600  NULL /*target_info*/,
21601 };
21602 
21603 //---------------------------------------------------------------------------
21604 // Zone name: Asia/Tomsk
21605 // Zone Eras: 9
21606 //---------------------------------------------------------------------------
21607 
21608 static const AtcZoneEra kAtcZoneEraAsia_Tomsk[] = {
21609  // 5:39:51 - LMT 1919 Dec 22
21610  {
21611  NULL /*zone_policy*/,
21612  "LMT" /*format*/,
21613  1359 /*offset_code (20391/15)*/,
21614  6 /*offset_remainder (20391%15)*/,
21615  0 /*delta_minutes*/,
21616  1919 /*until_year*/,
21617  12 /*until_month*/,
21618  22 /*until_day*/,
21619  0 /*until_time_code (0/15)*/,
21620  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21621  },
21622  // 6:00 - +06 1930 Jun 21
21623  {
21624  NULL /*zone_policy*/,
21625  "+06" /*format*/,
21626  1440 /*offset_code (21600/15)*/,
21627  0 /*offset_remainder (21600%15)*/,
21628  0 /*delta_minutes*/,
21629  1930 /*until_year*/,
21630  6 /*until_month*/,
21631  21 /*until_day*/,
21632  0 /*until_time_code (0/15)*/,
21633  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21634  },
21635  // 7:00 Russia +07/+08 1991 Mar 31 2:00s
21636  {
21637  &kAtcAllZonePolicyRussia /*zone_policy*/,
21638  "+07/+08" /*format*/,
21639  1680 /*offset_code (25200/15)*/,
21640  0 /*offset_remainder (25200%15)*/,
21641  0 /*delta_minutes*/,
21642  1991 /*until_year*/,
21643  3 /*until_month*/,
21644  31 /*until_day*/,
21645  480 /*until_time_code (7200/15)*/,
21646  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21647  },
21648  // 6:00 Russia +06/+07 1992 Jan 19 2:00s
21649  {
21650  &kAtcAllZonePolicyRussia /*zone_policy*/,
21651  "+06/+07" /*format*/,
21652  1440 /*offset_code (21600/15)*/,
21653  0 /*offset_remainder (21600%15)*/,
21654  0 /*delta_minutes*/,
21655  1992 /*until_year*/,
21656  1 /*until_month*/,
21657  19 /*until_day*/,
21658  480 /*until_time_code (7200/15)*/,
21659  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21660  },
21661  // 7:00 Russia +07/+08 2002 May 1 3:00
21662  {
21663  &kAtcAllZonePolicyRussia /*zone_policy*/,
21664  "+07/+08" /*format*/,
21665  1680 /*offset_code (25200/15)*/,
21666  0 /*offset_remainder (25200%15)*/,
21667  0 /*delta_minutes*/,
21668  2002 /*until_year*/,
21669  5 /*until_month*/,
21670  1 /*until_day*/,
21671  720 /*until_time_code (10800/15)*/,
21672  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21673  },
21674  // 6:00 Russia +06/+07 2011 Mar 27 2:00s
21675  {
21676  &kAtcAllZonePolicyRussia /*zone_policy*/,
21677  "+06/+07" /*format*/,
21678  1440 /*offset_code (21600/15)*/,
21679  0 /*offset_remainder (21600%15)*/,
21680  0 /*delta_minutes*/,
21681  2011 /*until_year*/,
21682  3 /*until_month*/,
21683  27 /*until_day*/,
21684  480 /*until_time_code (7200/15)*/,
21685  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21686  },
21687  // 7:00 - +07 2014 Oct 26 2:00s
21688  {
21689  NULL /*zone_policy*/,
21690  "+07" /*format*/,
21691  1680 /*offset_code (25200/15)*/,
21692  0 /*offset_remainder (25200%15)*/,
21693  0 /*delta_minutes*/,
21694  2014 /*until_year*/,
21695  10 /*until_month*/,
21696  26 /*until_day*/,
21697  480 /*until_time_code (7200/15)*/,
21698  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21699  },
21700  // 6:00 - +06 2016 May 29 2:00s
21701  {
21702  NULL /*zone_policy*/,
21703  "+06" /*format*/,
21704  1440 /*offset_code (21600/15)*/,
21705  0 /*offset_remainder (21600%15)*/,
21706  0 /*delta_minutes*/,
21707  2016 /*until_year*/,
21708  5 /*until_month*/,
21709  29 /*until_day*/,
21710  480 /*until_time_code (7200/15)*/,
21711  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21712  },
21713  // 7:00 - +07
21714  {
21715  NULL /*zone_policy*/,
21716  "+07" /*format*/,
21717  1680 /*offset_code (25200/15)*/,
21718  0 /*offset_remainder (25200%15)*/,
21719  0 /*delta_minutes*/,
21720  32767 /*until_year*/,
21721  1 /*until_month*/,
21722  1 /*until_day*/,
21723  0 /*until_time_code (0/15)*/,
21724  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21725  },
21726 
21727 };
21728 
21729 static const char kAtcZoneNameAsia_Tomsk[] = "Asia/Tomsk";
21730 
21731 const AtcZoneInfo kAtcAllZoneAsia_Tomsk = {
21732  kAtcZoneNameAsia_Tomsk /*name*/,
21733  0x15e60e60 /*zone_id*/,
21734  &kAtcAllZoneContext /*zone_context*/,
21735  9 /*num_eras*/,
21736  kAtcZoneEraAsia_Tomsk /*eras*/,
21737  NULL /*target_info*/,
21738 };
21739 
21740 //---------------------------------------------------------------------------
21741 // Zone name: Asia/Ulaanbaatar
21742 // Zone Eras: 3
21743 //---------------------------------------------------------------------------
21744 
21745 static const AtcZoneEra kAtcZoneEraAsia_Ulaanbaatar[] = {
21746  // 7:07:32 - LMT 1905 Aug
21747  {
21748  NULL /*zone_policy*/,
21749  "LMT" /*format*/,
21750  1710 /*offset_code (25652/15)*/,
21751  2 /*offset_remainder (25652%15)*/,
21752  0 /*delta_minutes*/,
21753  1905 /*until_year*/,
21754  8 /*until_month*/,
21755  1 /*until_day*/,
21756  0 /*until_time_code (0/15)*/,
21757  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21758  },
21759  // 7:00 - +07 1978
21760  {
21761  NULL /*zone_policy*/,
21762  "+07" /*format*/,
21763  1680 /*offset_code (25200/15)*/,
21764  0 /*offset_remainder (25200%15)*/,
21765  0 /*delta_minutes*/,
21766  1978 /*until_year*/,
21767  1 /*until_month*/,
21768  1 /*until_day*/,
21769  0 /*until_time_code (0/15)*/,
21770  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21771  },
21772  // 8:00 Mongol +08/+09
21773  {
21774  &kAtcAllZonePolicyMongol /*zone_policy*/,
21775  "+08/+09" /*format*/,
21776  1920 /*offset_code (28800/15)*/,
21777  0 /*offset_remainder (28800%15)*/,
21778  0 /*delta_minutes*/,
21779  32767 /*until_year*/,
21780  1 /*until_month*/,
21781  1 /*until_day*/,
21782  0 /*until_time_code (0/15)*/,
21783  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21784  },
21785 
21786 };
21787 
21788 static const char kAtcZoneNameAsia_Ulaanbaatar[] = "Asia/Ulaanbaatar";
21789 
21790 const AtcZoneInfo kAtcAllZoneAsia_Ulaanbaatar = {
21791  kAtcZoneNameAsia_Ulaanbaatar /*name*/,
21792  0x30f0cc4e /*zone_id*/,
21793  &kAtcAllZoneContext /*zone_context*/,
21794  3 /*num_eras*/,
21795  kAtcZoneEraAsia_Ulaanbaatar /*eras*/,
21796  NULL /*target_info*/,
21797 };
21798 
21799 //---------------------------------------------------------------------------
21800 // Zone name: Asia/Urumqi
21801 // Zone Eras: 2
21802 //---------------------------------------------------------------------------
21803 
21804 static const AtcZoneEra kAtcZoneEraAsia_Urumqi[] = {
21805  // 5:50:20 - LMT 1928
21806  {
21807  NULL /*zone_policy*/,
21808  "LMT" /*format*/,
21809  1401 /*offset_code (21020/15)*/,
21810  5 /*offset_remainder (21020%15)*/,
21811  0 /*delta_minutes*/,
21812  1928 /*until_year*/,
21813  1 /*until_month*/,
21814  1 /*until_day*/,
21815  0 /*until_time_code (0/15)*/,
21816  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21817  },
21818  // 6:00 - +06
21819  {
21820  NULL /*zone_policy*/,
21821  "+06" /*format*/,
21822  1440 /*offset_code (21600/15)*/,
21823  0 /*offset_remainder (21600%15)*/,
21824  0 /*delta_minutes*/,
21825  32767 /*until_year*/,
21826  1 /*until_month*/,
21827  1 /*until_day*/,
21828  0 /*until_time_code (0/15)*/,
21829  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21830  },
21831 
21832 };
21833 
21834 static const char kAtcZoneNameAsia_Urumqi[] = "Asia/Urumqi";
21835 
21836 const AtcZoneInfo kAtcAllZoneAsia_Urumqi = {
21837  kAtcZoneNameAsia_Urumqi /*name*/,
21838  0xd5379735 /*zone_id*/,
21839  &kAtcAllZoneContext /*zone_context*/,
21840  2 /*num_eras*/,
21841  kAtcZoneEraAsia_Urumqi /*eras*/,
21842  NULL /*target_info*/,
21843 };
21844 
21845 //---------------------------------------------------------------------------
21846 // Zone name: Asia/Ust-Nera
21847 // Zone Eras: 9
21848 //---------------------------------------------------------------------------
21849 
21850 static const AtcZoneEra kAtcZoneEraAsia_Ust_Nera[] = {
21851  // 9:32:54 - LMT 1919 Dec 15
21852  {
21853  NULL /*zone_policy*/,
21854  "LMT" /*format*/,
21855  2291 /*offset_code (34374/15)*/,
21856  9 /*offset_remainder (34374%15)*/,
21857  0 /*delta_minutes*/,
21858  1919 /*until_year*/,
21859  12 /*until_month*/,
21860  15 /*until_day*/,
21861  0 /*until_time_code (0/15)*/,
21862  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21863  },
21864  // 8:00 - +08 1930 Jun 21
21865  {
21866  NULL /*zone_policy*/,
21867  "+08" /*format*/,
21868  1920 /*offset_code (28800/15)*/,
21869  0 /*offset_remainder (28800%15)*/,
21870  0 /*delta_minutes*/,
21871  1930 /*until_year*/,
21872  6 /*until_month*/,
21873  21 /*until_day*/,
21874  0 /*until_time_code (0/15)*/,
21875  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21876  },
21877  // 9:00 Russia +09/+10 1981 Apr 1
21878  {
21879  &kAtcAllZonePolicyRussia /*zone_policy*/,
21880  "+09/+10" /*format*/,
21881  2160 /*offset_code (32400/15)*/,
21882  0 /*offset_remainder (32400%15)*/,
21883  0 /*delta_minutes*/,
21884  1981 /*until_year*/,
21885  4 /*until_month*/,
21886  1 /*until_day*/,
21887  0 /*until_time_code (0/15)*/,
21888  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21889  },
21890  // 11:00 Russia +11/+12 1991 Mar 31 2:00s
21891  {
21892  &kAtcAllZonePolicyRussia /*zone_policy*/,
21893  "+11/+12" /*format*/,
21894  2640 /*offset_code (39600/15)*/,
21895  0 /*offset_remainder (39600%15)*/,
21896  0 /*delta_minutes*/,
21897  1991 /*until_year*/,
21898  3 /*until_month*/,
21899  31 /*until_day*/,
21900  480 /*until_time_code (7200/15)*/,
21901  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21902  },
21903  // 10:00 Russia +10/+11 1992 Jan 19 2:00s
21904  {
21905  &kAtcAllZonePolicyRussia /*zone_policy*/,
21906  "+10/+11" /*format*/,
21907  2400 /*offset_code (36000/15)*/,
21908  0 /*offset_remainder (36000%15)*/,
21909  0 /*delta_minutes*/,
21910  1992 /*until_year*/,
21911  1 /*until_month*/,
21912  19 /*until_day*/,
21913  480 /*until_time_code (7200/15)*/,
21914  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21915  },
21916  // 11:00 Russia +11/+12 2011 Mar 27 2:00s
21917  {
21918  &kAtcAllZonePolicyRussia /*zone_policy*/,
21919  "+11/+12" /*format*/,
21920  2640 /*offset_code (39600/15)*/,
21921  0 /*offset_remainder (39600%15)*/,
21922  0 /*delta_minutes*/,
21923  2011 /*until_year*/,
21924  3 /*until_month*/,
21925  27 /*until_day*/,
21926  480 /*until_time_code (7200/15)*/,
21927  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21928  },
21929  // 12:00 - +12 2011 Sep 13 0:00s
21930  {
21931  NULL /*zone_policy*/,
21932  "+12" /*format*/,
21933  2880 /*offset_code (43200/15)*/,
21934  0 /*offset_remainder (43200%15)*/,
21935  0 /*delta_minutes*/,
21936  2011 /*until_year*/,
21937  9 /*until_month*/,
21938  13 /*until_day*/,
21939  0 /*until_time_code (0/15)*/,
21940  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21941  },
21942  // 11:00 - +11 2014 Oct 26 2:00s
21943  {
21944  NULL /*zone_policy*/,
21945  "+11" /*format*/,
21946  2640 /*offset_code (39600/15)*/,
21947  0 /*offset_remainder (39600%15)*/,
21948  0 /*delta_minutes*/,
21949  2014 /*until_year*/,
21950  10 /*until_month*/,
21951  26 /*until_day*/,
21952  480 /*until_time_code (7200/15)*/,
21953  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
21954  },
21955  // 10:00 - +10
21956  {
21957  NULL /*zone_policy*/,
21958  "+10" /*format*/,
21959  2400 /*offset_code (36000/15)*/,
21960  0 /*offset_remainder (36000%15)*/,
21961  0 /*delta_minutes*/,
21962  32767 /*until_year*/,
21963  1 /*until_month*/,
21964  1 /*until_day*/,
21965  0 /*until_time_code (0/15)*/,
21966  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
21967  },
21968 
21969 };
21970 
21971 static const char kAtcZoneNameAsia_Ust_Nera[] = "Asia/Ust-Nera";
21972 
21973 const AtcZoneInfo kAtcAllZoneAsia_Ust_Nera = {
21974  kAtcZoneNameAsia_Ust_Nera /*name*/,
21975  0x4785f921 /*zone_id*/,
21976  &kAtcAllZoneContext /*zone_context*/,
21977  9 /*num_eras*/,
21978  kAtcZoneEraAsia_Ust_Nera /*eras*/,
21979  NULL /*target_info*/,
21980 };
21981 
21982 //---------------------------------------------------------------------------
21983 // Zone name: Asia/Vladivostok
21984 // Zone Eras: 7
21985 //---------------------------------------------------------------------------
21986 
21987 static const AtcZoneEra kAtcZoneEraAsia_Vladivostok[] = {
21988  // 8:47:31 - LMT 1922 Nov 15
21989  {
21990  NULL /*zone_policy*/,
21991  "LMT" /*format*/,
21992  2110 /*offset_code (31651/15)*/,
21993  1 /*offset_remainder (31651%15)*/,
21994  0 /*delta_minutes*/,
21995  1922 /*until_year*/,
21996  11 /*until_month*/,
21997  15 /*until_day*/,
21998  0 /*until_time_code (0/15)*/,
21999  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22000  },
22001  // 9:00 - +09 1930 Jun 21
22002  {
22003  NULL /*zone_policy*/,
22004  "+09" /*format*/,
22005  2160 /*offset_code (32400/15)*/,
22006  0 /*offset_remainder (32400%15)*/,
22007  0 /*delta_minutes*/,
22008  1930 /*until_year*/,
22009  6 /*until_month*/,
22010  21 /*until_day*/,
22011  0 /*until_time_code (0/15)*/,
22012  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22013  },
22014  // 10:00 Russia +10/+11 1991 Mar 31 2:00s
22015  {
22016  &kAtcAllZonePolicyRussia /*zone_policy*/,
22017  "+10/+11" /*format*/,
22018  2400 /*offset_code (36000/15)*/,
22019  0 /*offset_remainder (36000%15)*/,
22020  0 /*delta_minutes*/,
22021  1991 /*until_year*/,
22022  3 /*until_month*/,
22023  31 /*until_day*/,
22024  480 /*until_time_code (7200/15)*/,
22025  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22026  },
22027  // 9:00 Russia +09/+10 1992 Jan 19 2:00s
22028  {
22029  &kAtcAllZonePolicyRussia /*zone_policy*/,
22030  "+09/+10" /*format*/,
22031  2160 /*offset_code (32400/15)*/,
22032  0 /*offset_remainder (32400%15)*/,
22033  0 /*delta_minutes*/,
22034  1992 /*until_year*/,
22035  1 /*until_month*/,
22036  19 /*until_day*/,
22037  480 /*until_time_code (7200/15)*/,
22038  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22039  },
22040  // 10:00 Russia +10/+11 2011 Mar 27 2:00s
22041  {
22042  &kAtcAllZonePolicyRussia /*zone_policy*/,
22043  "+10/+11" /*format*/,
22044  2400 /*offset_code (36000/15)*/,
22045  0 /*offset_remainder (36000%15)*/,
22046  0 /*delta_minutes*/,
22047  2011 /*until_year*/,
22048  3 /*until_month*/,
22049  27 /*until_day*/,
22050  480 /*until_time_code (7200/15)*/,
22051  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22052  },
22053  // 11:00 - +11 2014 Oct 26 2:00s
22054  {
22055  NULL /*zone_policy*/,
22056  "+11" /*format*/,
22057  2640 /*offset_code (39600/15)*/,
22058  0 /*offset_remainder (39600%15)*/,
22059  0 /*delta_minutes*/,
22060  2014 /*until_year*/,
22061  10 /*until_month*/,
22062  26 /*until_day*/,
22063  480 /*until_time_code (7200/15)*/,
22064  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22065  },
22066  // 10:00 - +10
22067  {
22068  NULL /*zone_policy*/,
22069  "+10" /*format*/,
22070  2400 /*offset_code (36000/15)*/,
22071  0 /*offset_remainder (36000%15)*/,
22072  0 /*delta_minutes*/,
22073  32767 /*until_year*/,
22074  1 /*until_month*/,
22075  1 /*until_day*/,
22076  0 /*until_time_code (0/15)*/,
22077  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22078  },
22079 
22080 };
22081 
22082 static const char kAtcZoneNameAsia_Vladivostok[] = "Asia/Vladivostok";
22083 
22084 const AtcZoneInfo kAtcAllZoneAsia_Vladivostok = {
22085  kAtcZoneNameAsia_Vladivostok /*name*/,
22086  0x29de34a8 /*zone_id*/,
22087  &kAtcAllZoneContext /*zone_context*/,
22088  7 /*num_eras*/,
22089  kAtcZoneEraAsia_Vladivostok /*eras*/,
22090  NULL /*target_info*/,
22091 };
22092 
22093 //---------------------------------------------------------------------------
22094 // Zone name: Asia/Yakutsk
22095 // Zone Eras: 7
22096 //---------------------------------------------------------------------------
22097 
22098 static const AtcZoneEra kAtcZoneEraAsia_Yakutsk[] = {
22099  // 8:38:58 - LMT 1919 Dec 15
22100  {
22101  NULL /*zone_policy*/,
22102  "LMT" /*format*/,
22103  2075 /*offset_code (31138/15)*/,
22104  13 /*offset_remainder (31138%15)*/,
22105  0 /*delta_minutes*/,
22106  1919 /*until_year*/,
22107  12 /*until_month*/,
22108  15 /*until_day*/,
22109  0 /*until_time_code (0/15)*/,
22110  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22111  },
22112  // 8:00 - +08 1930 Jun 21
22113  {
22114  NULL /*zone_policy*/,
22115  "+08" /*format*/,
22116  1920 /*offset_code (28800/15)*/,
22117  0 /*offset_remainder (28800%15)*/,
22118  0 /*delta_minutes*/,
22119  1930 /*until_year*/,
22120  6 /*until_month*/,
22121  21 /*until_day*/,
22122  0 /*until_time_code (0/15)*/,
22123  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22124  },
22125  // 9:00 Russia +09/+10 1991 Mar 31 2:00s
22126  {
22127  &kAtcAllZonePolicyRussia /*zone_policy*/,
22128  "+09/+10" /*format*/,
22129  2160 /*offset_code (32400/15)*/,
22130  0 /*offset_remainder (32400%15)*/,
22131  0 /*delta_minutes*/,
22132  1991 /*until_year*/,
22133  3 /*until_month*/,
22134  31 /*until_day*/,
22135  480 /*until_time_code (7200/15)*/,
22136  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22137  },
22138  // 8:00 Russia +08/+09 1992 Jan 19 2:00s
22139  {
22140  &kAtcAllZonePolicyRussia /*zone_policy*/,
22141  "+08/+09" /*format*/,
22142  1920 /*offset_code (28800/15)*/,
22143  0 /*offset_remainder (28800%15)*/,
22144  0 /*delta_minutes*/,
22145  1992 /*until_year*/,
22146  1 /*until_month*/,
22147  19 /*until_day*/,
22148  480 /*until_time_code (7200/15)*/,
22149  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22150  },
22151  // 9:00 Russia +09/+10 2011 Mar 27 2:00s
22152  {
22153  &kAtcAllZonePolicyRussia /*zone_policy*/,
22154  "+09/+10" /*format*/,
22155  2160 /*offset_code (32400/15)*/,
22156  0 /*offset_remainder (32400%15)*/,
22157  0 /*delta_minutes*/,
22158  2011 /*until_year*/,
22159  3 /*until_month*/,
22160  27 /*until_day*/,
22161  480 /*until_time_code (7200/15)*/,
22162  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22163  },
22164  // 10:00 - +10 2014 Oct 26 2:00s
22165  {
22166  NULL /*zone_policy*/,
22167  "+10" /*format*/,
22168  2400 /*offset_code (36000/15)*/,
22169  0 /*offset_remainder (36000%15)*/,
22170  0 /*delta_minutes*/,
22171  2014 /*until_year*/,
22172  10 /*until_month*/,
22173  26 /*until_day*/,
22174  480 /*until_time_code (7200/15)*/,
22175  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22176  },
22177  // 9:00 - +09
22178  {
22179  NULL /*zone_policy*/,
22180  "+09" /*format*/,
22181  2160 /*offset_code (32400/15)*/,
22182  0 /*offset_remainder (32400%15)*/,
22183  0 /*delta_minutes*/,
22184  32767 /*until_year*/,
22185  1 /*until_month*/,
22186  1 /*until_day*/,
22187  0 /*until_time_code (0/15)*/,
22188  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22189  },
22190 
22191 };
22192 
22193 static const char kAtcZoneNameAsia_Yakutsk[] = "Asia/Yakutsk";
22194 
22195 const AtcZoneInfo kAtcAllZoneAsia_Yakutsk = {
22196  kAtcZoneNameAsia_Yakutsk /*name*/,
22197  0x87bb3a9e /*zone_id*/,
22198  &kAtcAllZoneContext /*zone_context*/,
22199  7 /*num_eras*/,
22200  kAtcZoneEraAsia_Yakutsk /*eras*/,
22201  NULL /*target_info*/,
22202 };
22203 
22204 //---------------------------------------------------------------------------
22205 // Zone name: Asia/Yangon
22206 // Zone Eras: 5
22207 //---------------------------------------------------------------------------
22208 
22209 static const AtcZoneEra kAtcZoneEraAsia_Yangon[] = {
22210  // 6:24:47 - LMT 1880
22211  {
22212  NULL /*zone_policy*/,
22213  "LMT" /*format*/,
22214  1539 /*offset_code (23087/15)*/,
22215  2 /*offset_remainder (23087%15)*/,
22216  0 /*delta_minutes*/,
22217  1880 /*until_year*/,
22218  1 /*until_month*/,
22219  1 /*until_day*/,
22220  0 /*until_time_code (0/15)*/,
22221  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22222  },
22223  // 6:24:47 - RMT 1920
22224  {
22225  NULL /*zone_policy*/,
22226  "RMT" /*format*/,
22227  1539 /*offset_code (23087/15)*/,
22228  2 /*offset_remainder (23087%15)*/,
22229  0 /*delta_minutes*/,
22230  1920 /*until_year*/,
22231  1 /*until_month*/,
22232  1 /*until_day*/,
22233  0 /*until_time_code (0/15)*/,
22234  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22235  },
22236  // 6:30 - +0630 1942 May
22237  {
22238  NULL /*zone_policy*/,
22239  "+0630" /*format*/,
22240  1560 /*offset_code (23400/15)*/,
22241  0 /*offset_remainder (23400%15)*/,
22242  0 /*delta_minutes*/,
22243  1942 /*until_year*/,
22244  5 /*until_month*/,
22245  1 /*until_day*/,
22246  0 /*until_time_code (0/15)*/,
22247  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22248  },
22249  // 9:00 - +09 1945 May 3
22250  {
22251  NULL /*zone_policy*/,
22252  "+09" /*format*/,
22253  2160 /*offset_code (32400/15)*/,
22254  0 /*offset_remainder (32400%15)*/,
22255  0 /*delta_minutes*/,
22256  1945 /*until_year*/,
22257  5 /*until_month*/,
22258  3 /*until_day*/,
22259  0 /*until_time_code (0/15)*/,
22260  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22261  },
22262  // 6:30 - +0630
22263  {
22264  NULL /*zone_policy*/,
22265  "+0630" /*format*/,
22266  1560 /*offset_code (23400/15)*/,
22267  0 /*offset_remainder (23400%15)*/,
22268  0 /*delta_minutes*/,
22269  32767 /*until_year*/,
22270  1 /*until_month*/,
22271  1 /*until_day*/,
22272  0 /*until_time_code (0/15)*/,
22273  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22274  },
22275 
22276 };
22277 
22278 static const char kAtcZoneNameAsia_Yangon[] = "Asia/Yangon";
22279 
22280 const AtcZoneInfo kAtcAllZoneAsia_Yangon = {
22281  kAtcZoneNameAsia_Yangon /*name*/,
22282  0xdd54a8be /*zone_id*/,
22283  &kAtcAllZoneContext /*zone_context*/,
22284  5 /*num_eras*/,
22285  kAtcZoneEraAsia_Yangon /*eras*/,
22286  NULL /*target_info*/,
22287 };
22288 
22289 //---------------------------------------------------------------------------
22290 // Zone name: Asia/Yekaterinburg
22291 // Zone Eras: 8
22292 //---------------------------------------------------------------------------
22293 
22294 static const AtcZoneEra kAtcZoneEraAsia_Yekaterinburg[] = {
22295  // 4:02:33 - LMT 1916 Jul 3
22296  {
22297  NULL /*zone_policy*/,
22298  "LMT" /*format*/,
22299  970 /*offset_code (14553/15)*/,
22300  3 /*offset_remainder (14553%15)*/,
22301  0 /*delta_minutes*/,
22302  1916 /*until_year*/,
22303  7 /*until_month*/,
22304  3 /*until_day*/,
22305  0 /*until_time_code (0/15)*/,
22306  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22307  },
22308  // 3:45:05 - PMT 1919 Jul 15 4:00
22309  {
22310  NULL /*zone_policy*/,
22311  "PMT" /*format*/,
22312  900 /*offset_code (13505/15)*/,
22313  5 /*offset_remainder (13505%15)*/,
22314  0 /*delta_minutes*/,
22315  1919 /*until_year*/,
22316  7 /*until_month*/,
22317  15 /*until_day*/,
22318  960 /*until_time_code (14400/15)*/,
22319  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22320  },
22321  // 4:00 - +04 1930 Jun 21
22322  {
22323  NULL /*zone_policy*/,
22324  "+04" /*format*/,
22325  960 /*offset_code (14400/15)*/,
22326  0 /*offset_remainder (14400%15)*/,
22327  0 /*delta_minutes*/,
22328  1930 /*until_year*/,
22329  6 /*until_month*/,
22330  21 /*until_day*/,
22331  0 /*until_time_code (0/15)*/,
22332  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22333  },
22334  // 5:00 Russia +05/+06 1991 Mar 31 2:00s
22335  {
22336  &kAtcAllZonePolicyRussia /*zone_policy*/,
22337  "+05/+06" /*format*/,
22338  1200 /*offset_code (18000/15)*/,
22339  0 /*offset_remainder (18000%15)*/,
22340  0 /*delta_minutes*/,
22341  1991 /*until_year*/,
22342  3 /*until_month*/,
22343  31 /*until_day*/,
22344  480 /*until_time_code (7200/15)*/,
22345  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22346  },
22347  // 4:00 Russia +04/+05 1992 Jan 19 2:00s
22348  {
22349  &kAtcAllZonePolicyRussia /*zone_policy*/,
22350  "+04/+05" /*format*/,
22351  960 /*offset_code (14400/15)*/,
22352  0 /*offset_remainder (14400%15)*/,
22353  0 /*delta_minutes*/,
22354  1992 /*until_year*/,
22355  1 /*until_month*/,
22356  19 /*until_day*/,
22357  480 /*until_time_code (7200/15)*/,
22358  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22359  },
22360  // 5:00 Russia +05/+06 2011 Mar 27 2:00s
22361  {
22362  &kAtcAllZonePolicyRussia /*zone_policy*/,
22363  "+05/+06" /*format*/,
22364  1200 /*offset_code (18000/15)*/,
22365  0 /*offset_remainder (18000%15)*/,
22366  0 /*delta_minutes*/,
22367  2011 /*until_year*/,
22368  3 /*until_month*/,
22369  27 /*until_day*/,
22370  480 /*until_time_code (7200/15)*/,
22371  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22372  },
22373  // 6:00 - +06 2014 Oct 26 2:00s
22374  {
22375  NULL /*zone_policy*/,
22376  "+06" /*format*/,
22377  1440 /*offset_code (21600/15)*/,
22378  0 /*offset_remainder (21600%15)*/,
22379  0 /*delta_minutes*/,
22380  2014 /*until_year*/,
22381  10 /*until_month*/,
22382  26 /*until_day*/,
22383  480 /*until_time_code (7200/15)*/,
22384  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22385  },
22386  // 5:00 - +05
22387  {
22388  NULL /*zone_policy*/,
22389  "+05" /*format*/,
22390  1200 /*offset_code (18000/15)*/,
22391  0 /*offset_remainder (18000%15)*/,
22392  0 /*delta_minutes*/,
22393  32767 /*until_year*/,
22394  1 /*until_month*/,
22395  1 /*until_day*/,
22396  0 /*until_time_code (0/15)*/,
22397  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22398  },
22399 
22400 };
22401 
22402 static const char kAtcZoneNameAsia_Yekaterinburg[] = "Asia/Yekaterinburg";
22403 
22404 const AtcZoneInfo kAtcAllZoneAsia_Yekaterinburg = {
22405  kAtcZoneNameAsia_Yekaterinburg /*name*/,
22406  0xfb544c6e /*zone_id*/,
22407  &kAtcAllZoneContext /*zone_context*/,
22408  8 /*num_eras*/,
22409  kAtcZoneEraAsia_Yekaterinburg /*eras*/,
22410  NULL /*target_info*/,
22411 };
22412 
22413 //---------------------------------------------------------------------------
22414 // Zone name: Asia/Yerevan
22415 // Zone Eras: 7
22416 //---------------------------------------------------------------------------
22417 
22418 static const AtcZoneEra kAtcZoneEraAsia_Yerevan[] = {
22419  // 2:58:00 - LMT 1924 May 2
22420  {
22421  NULL /*zone_policy*/,
22422  "LMT" /*format*/,
22423  712 /*offset_code (10680/15)*/,
22424  0 /*offset_remainder (10680%15)*/,
22425  0 /*delta_minutes*/,
22426  1924 /*until_year*/,
22427  5 /*until_month*/,
22428  2 /*until_day*/,
22429  0 /*until_time_code (0/15)*/,
22430  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22431  },
22432  // 3:00 - +03 1957 Mar
22433  {
22434  NULL /*zone_policy*/,
22435  "+03" /*format*/,
22436  720 /*offset_code (10800/15)*/,
22437  0 /*offset_remainder (10800%15)*/,
22438  0 /*delta_minutes*/,
22439  1957 /*until_year*/,
22440  3 /*until_month*/,
22441  1 /*until_day*/,
22442  0 /*until_time_code (0/15)*/,
22443  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22444  },
22445  // 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
22446  {
22447  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
22448  "+04/+05" /*format*/,
22449  960 /*offset_code (14400/15)*/,
22450  0 /*offset_remainder (14400%15)*/,
22451  0 /*delta_minutes*/,
22452  1991 /*until_year*/,
22453  3 /*until_month*/,
22454  31 /*until_day*/,
22455  480 /*until_time_code (7200/15)*/,
22456  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22457  },
22458  // 3:00 RussiaAsia +03/+04 1995 Sep 24 2:00s
22459  {
22460  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
22461  "+03/+04" /*format*/,
22462  720 /*offset_code (10800/15)*/,
22463  0 /*offset_remainder (10800%15)*/,
22464  0 /*delta_minutes*/,
22465  1995 /*until_year*/,
22466  9 /*until_month*/,
22467  24 /*until_day*/,
22468  480 /*until_time_code (7200/15)*/,
22469  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22470  },
22471  // 4:00 - +04 1997
22472  {
22473  NULL /*zone_policy*/,
22474  "+04" /*format*/,
22475  960 /*offset_code (14400/15)*/,
22476  0 /*offset_remainder (14400%15)*/,
22477  0 /*delta_minutes*/,
22478  1997 /*until_year*/,
22479  1 /*until_month*/,
22480  1 /*until_day*/,
22481  0 /*until_time_code (0/15)*/,
22482  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22483  },
22484  // 4:00 RussiaAsia +04/+05 2011
22485  {
22486  &kAtcAllZonePolicyRussiaAsia /*zone_policy*/,
22487  "+04/+05" /*format*/,
22488  960 /*offset_code (14400/15)*/,
22489  0 /*offset_remainder (14400%15)*/,
22490  0 /*delta_minutes*/,
22491  2011 /*until_year*/,
22492  1 /*until_month*/,
22493  1 /*until_day*/,
22494  0 /*until_time_code (0/15)*/,
22495  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22496  },
22497  // 4:00 Armenia +04/+05
22498  {
22499  &kAtcAllZonePolicyArmenia /*zone_policy*/,
22500  "+04/+05" /*format*/,
22501  960 /*offset_code (14400/15)*/,
22502  0 /*offset_remainder (14400%15)*/,
22503  0 /*delta_minutes*/,
22504  32767 /*until_year*/,
22505  1 /*until_month*/,
22506  1 /*until_day*/,
22507  0 /*until_time_code (0/15)*/,
22508  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22509  },
22510 
22511 };
22512 
22513 static const char kAtcZoneNameAsia_Yerevan[] = "Asia/Yerevan";
22514 
22515 const AtcZoneInfo kAtcAllZoneAsia_Yerevan = {
22516  kAtcZoneNameAsia_Yerevan /*name*/,
22517  0x9185c8cc /*zone_id*/,
22518  &kAtcAllZoneContext /*zone_context*/,
22519  7 /*num_eras*/,
22520  kAtcZoneEraAsia_Yerevan /*eras*/,
22521  NULL /*target_info*/,
22522 };
22523 
22524 //---------------------------------------------------------------------------
22525 // Zone name: Atlantic/Azores
22526 // Zone Eras: 15
22527 //---------------------------------------------------------------------------
22528 
22529 static const AtcZoneEra kAtcZoneEraAtlantic_Azores[] = {
22530  // -1:42:40 - LMT 1884
22531  {
22532  NULL /*zone_policy*/,
22533  "LMT" /*format*/,
22534  -411 /*offset_code (-6160/15)*/,
22535  5 /*offset_remainder (-6160%15)*/,
22536  0 /*delta_minutes*/,
22537  1884 /*until_year*/,
22538  1 /*until_month*/,
22539  1 /*until_day*/,
22540  0 /*until_time_code (0/15)*/,
22541  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22542  },
22543  // -1:54:32 - HMT 1912 Jan 1 2:00u
22544  {
22545  NULL /*zone_policy*/,
22546  "HMT" /*format*/,
22547  -459 /*offset_code (-6872/15)*/,
22548  13 /*offset_remainder (-6872%15)*/,
22549  0 /*delta_minutes*/,
22550  1912 /*until_year*/,
22551  1 /*until_month*/,
22552  1 /*until_day*/,
22553  480 /*until_time_code (7200/15)*/,
22554  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
22555  },
22556  // -2:00 Port -02/-01 1942 Apr 25 22:00s
22557  {
22558  &kAtcAllZonePolicyPort /*zone_policy*/,
22559  "-02/-01" /*format*/,
22560  -480 /*offset_code (-7200/15)*/,
22561  0 /*offset_remainder (-7200%15)*/,
22562  0 /*delta_minutes*/,
22563  1942 /*until_year*/,
22564  4 /*until_month*/,
22565  25 /*until_day*/,
22566  5280 /*until_time_code (79200/15)*/,
22567  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22568  },
22569  // -2:00 Port +00 1942 Aug 15 22:00s
22570  {
22571  &kAtcAllZonePolicyPort /*zone_policy*/,
22572  "+00" /*format*/,
22573  -480 /*offset_code (-7200/15)*/,
22574  0 /*offset_remainder (-7200%15)*/,
22575  0 /*delta_minutes*/,
22576  1942 /*until_year*/,
22577  8 /*until_month*/,
22578  15 /*until_day*/,
22579  5280 /*until_time_code (79200/15)*/,
22580  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22581  },
22582  // -2:00 Port -02/-01 1943 Apr 17 22:00s
22583  {
22584  &kAtcAllZonePolicyPort /*zone_policy*/,
22585  "-02/-01" /*format*/,
22586  -480 /*offset_code (-7200/15)*/,
22587  0 /*offset_remainder (-7200%15)*/,
22588  0 /*delta_minutes*/,
22589  1943 /*until_year*/,
22590  4 /*until_month*/,
22591  17 /*until_day*/,
22592  5280 /*until_time_code (79200/15)*/,
22593  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22594  },
22595  // -2:00 Port +00 1943 Aug 28 22:00s
22596  {
22597  &kAtcAllZonePolicyPort /*zone_policy*/,
22598  "+00" /*format*/,
22599  -480 /*offset_code (-7200/15)*/,
22600  0 /*offset_remainder (-7200%15)*/,
22601  0 /*delta_minutes*/,
22602  1943 /*until_year*/,
22603  8 /*until_month*/,
22604  28 /*until_day*/,
22605  5280 /*until_time_code (79200/15)*/,
22606  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22607  },
22608  // -2:00 Port -02/-01 1944 Apr 22 22:00s
22609  {
22610  &kAtcAllZonePolicyPort /*zone_policy*/,
22611  "-02/-01" /*format*/,
22612  -480 /*offset_code (-7200/15)*/,
22613  0 /*offset_remainder (-7200%15)*/,
22614  0 /*delta_minutes*/,
22615  1944 /*until_year*/,
22616  4 /*until_month*/,
22617  22 /*until_day*/,
22618  5280 /*until_time_code (79200/15)*/,
22619  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22620  },
22621  // -2:00 Port +00 1944 Aug 26 22:00s
22622  {
22623  &kAtcAllZonePolicyPort /*zone_policy*/,
22624  "+00" /*format*/,
22625  -480 /*offset_code (-7200/15)*/,
22626  0 /*offset_remainder (-7200%15)*/,
22627  0 /*delta_minutes*/,
22628  1944 /*until_year*/,
22629  8 /*until_month*/,
22630  26 /*until_day*/,
22631  5280 /*until_time_code (79200/15)*/,
22632  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22633  },
22634  // -2:00 Port -02/-01 1945 Apr 21 22:00s
22635  {
22636  &kAtcAllZonePolicyPort /*zone_policy*/,
22637  "-02/-01" /*format*/,
22638  -480 /*offset_code (-7200/15)*/,
22639  0 /*offset_remainder (-7200%15)*/,
22640  0 /*delta_minutes*/,
22641  1945 /*until_year*/,
22642  4 /*until_month*/,
22643  21 /*until_day*/,
22644  5280 /*until_time_code (79200/15)*/,
22645  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22646  },
22647  // -2:00 Port +00 1945 Aug 25 22:00s
22648  {
22649  &kAtcAllZonePolicyPort /*zone_policy*/,
22650  "+00" /*format*/,
22651  -480 /*offset_code (-7200/15)*/,
22652  0 /*offset_remainder (-7200%15)*/,
22653  0 /*delta_minutes*/,
22654  1945 /*until_year*/,
22655  8 /*until_month*/,
22656  25 /*until_day*/,
22657  5280 /*until_time_code (79200/15)*/,
22658  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22659  },
22660  // -2:00 Port -02/-01 1966 Apr 3 2:00
22661  {
22662  &kAtcAllZonePolicyPort /*zone_policy*/,
22663  "-02/-01" /*format*/,
22664  -480 /*offset_code (-7200/15)*/,
22665  0 /*offset_remainder (-7200%15)*/,
22666  0 /*delta_minutes*/,
22667  1966 /*until_year*/,
22668  4 /*until_month*/,
22669  3 /*until_day*/,
22670  480 /*until_time_code (7200/15)*/,
22671  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22672  },
22673  // -1:00 Port -01/+00 1983 Sep 25 1:00s
22674  {
22675  &kAtcAllZonePolicyPort /*zone_policy*/,
22676  "-01/+00" /*format*/,
22677  -240 /*offset_code (-3600/15)*/,
22678  0 /*offset_remainder (-3600%15)*/,
22679  0 /*delta_minutes*/,
22680  1983 /*until_year*/,
22681  9 /*until_month*/,
22682  25 /*until_day*/,
22683  240 /*until_time_code (3600/15)*/,
22684  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22685  },
22686  // -1:00 W-Eur -01/+00 1992 Sep 27 1:00s
22687  {
22688  &kAtcAllZonePolicyW_Eur /*zone_policy*/,
22689  "-01/+00" /*format*/,
22690  -240 /*offset_code (-3600/15)*/,
22691  0 /*offset_remainder (-3600%15)*/,
22692  0 /*delta_minutes*/,
22693  1992 /*until_year*/,
22694  9 /*until_month*/,
22695  27 /*until_day*/,
22696  240 /*until_time_code (3600/15)*/,
22697  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22698  },
22699  // 0:00 EU WE%sT 1993 Mar 28 1:00u
22700  {
22701  &kAtcAllZonePolicyEU /*zone_policy*/,
22702  "WE%T" /*format*/,
22703  0 /*offset_code (0/15)*/,
22704  0 /*offset_remainder (0%15)*/,
22705  0 /*delta_minutes*/,
22706  1993 /*until_year*/,
22707  3 /*until_month*/,
22708  28 /*until_day*/,
22709  240 /*until_time_code (3600/15)*/,
22710  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
22711  },
22712  // -1:00 EU -01/+00
22713  {
22714  &kAtcAllZonePolicyEU /*zone_policy*/,
22715  "-01/+00" /*format*/,
22716  -240 /*offset_code (-3600/15)*/,
22717  0 /*offset_remainder (-3600%15)*/,
22718  0 /*delta_minutes*/,
22719  32767 /*until_year*/,
22720  1 /*until_month*/,
22721  1 /*until_day*/,
22722  0 /*until_time_code (0/15)*/,
22723  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22724  },
22725 
22726 };
22727 
22728 static const char kAtcZoneNameAtlantic_Azores[] = "Atlantic/Azores";
22729 
22730 const AtcZoneInfo kAtcAllZoneAtlantic_Azores = {
22731  kAtcZoneNameAtlantic_Azores /*name*/,
22732  0xf93ed918 /*zone_id*/,
22733  &kAtcAllZoneContext /*zone_context*/,
22734  15 /*num_eras*/,
22735  kAtcZoneEraAtlantic_Azores /*eras*/,
22736  NULL /*target_info*/,
22737 };
22738 
22739 //---------------------------------------------------------------------------
22740 // Zone name: Atlantic/Bermuda
22741 // Zone Eras: 5
22742 //---------------------------------------------------------------------------
22743 
22744 static const AtcZoneEra kAtcZoneEraAtlantic_Bermuda[] = {
22745  // -4:19:18 - LMT 1890
22746  {
22747  NULL /*zone_policy*/,
22748  "LMT" /*format*/,
22749  -1038 /*offset_code (-15558/15)*/,
22750  12 /*offset_remainder (-15558%15)*/,
22751  0 /*delta_minutes*/,
22752  1890 /*until_year*/,
22753  1 /*until_month*/,
22754  1 /*until_day*/,
22755  0 /*until_time_code (0/15)*/,
22756  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22757  },
22758  // -4:19:18 Bermuda BMT/BST 1930 Jan 1 2:00
22759  {
22760  &kAtcAllZonePolicyBermuda /*zone_policy*/,
22761  "BMT/BST" /*format*/,
22762  -1038 /*offset_code (-15558/15)*/,
22763  12 /*offset_remainder (-15558%15)*/,
22764  0 /*delta_minutes*/,
22765  1930 /*until_year*/,
22766  1 /*until_month*/,
22767  1 /*until_day*/,
22768  480 /*until_time_code (7200/15)*/,
22769  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22770  },
22771  // -4:00 Bermuda A%sT 1974 Apr 28 2:00
22772  {
22773  &kAtcAllZonePolicyBermuda /*zone_policy*/,
22774  "A%T" /*format*/,
22775  -960 /*offset_code (-14400/15)*/,
22776  0 /*offset_remainder (-14400%15)*/,
22777  0 /*delta_minutes*/,
22778  1974 /*until_year*/,
22779  4 /*until_month*/,
22780  28 /*until_day*/,
22781  480 /*until_time_code (7200/15)*/,
22782  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22783  },
22784  // -4:00 Canada A%sT 1976
22785  {
22786  &kAtcAllZonePolicyCanada /*zone_policy*/,
22787  "A%T" /*format*/,
22788  -960 /*offset_code (-14400/15)*/,
22789  0 /*offset_remainder (-14400%15)*/,
22790  0 /*delta_minutes*/,
22791  1976 /*until_year*/,
22792  1 /*until_month*/,
22793  1 /*until_day*/,
22794  0 /*until_time_code (0/15)*/,
22795  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22796  },
22797  // -4:00 US A%sT
22798  {
22799  &kAtcAllZonePolicyUS /*zone_policy*/,
22800  "A%T" /*format*/,
22801  -960 /*offset_code (-14400/15)*/,
22802  0 /*offset_remainder (-14400%15)*/,
22803  0 /*delta_minutes*/,
22804  32767 /*until_year*/,
22805  1 /*until_month*/,
22806  1 /*until_day*/,
22807  0 /*until_time_code (0/15)*/,
22808  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22809  },
22810 
22811 };
22812 
22813 static const char kAtcZoneNameAtlantic_Bermuda[] = "Atlantic/Bermuda";
22814 
22815 const AtcZoneInfo kAtcAllZoneAtlantic_Bermuda = {
22816  kAtcZoneNameAtlantic_Bermuda /*name*/,
22817  0x3d4bb1c4 /*zone_id*/,
22818  &kAtcAllZoneContext /*zone_context*/,
22819  5 /*num_eras*/,
22820  kAtcZoneEraAtlantic_Bermuda /*eras*/,
22821  NULL /*target_info*/,
22822 };
22823 
22824 //---------------------------------------------------------------------------
22825 // Zone name: Atlantic/Canary
22826 // Zone Eras: 5
22827 //---------------------------------------------------------------------------
22828 
22829 static const AtcZoneEra kAtcZoneEraAtlantic_Canary[] = {
22830  // -1:01:36 - LMT 1922 Mar
22831  {
22832  NULL /*zone_policy*/,
22833  "LMT" /*format*/,
22834  -247 /*offset_code (-3696/15)*/,
22835  9 /*offset_remainder (-3696%15)*/,
22836  0 /*delta_minutes*/,
22837  1922 /*until_year*/,
22838  3 /*until_month*/,
22839  1 /*until_day*/,
22840  0 /*until_time_code (0/15)*/,
22841  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22842  },
22843  // -1:00 - -01 1946 Sep 30 1:00
22844  {
22845  NULL /*zone_policy*/,
22846  "-01" /*format*/,
22847  -240 /*offset_code (-3600/15)*/,
22848  0 /*offset_remainder (-3600%15)*/,
22849  0 /*delta_minutes*/,
22850  1946 /*until_year*/,
22851  9 /*until_month*/,
22852  30 /*until_day*/,
22853  240 /*until_time_code (3600/15)*/,
22854  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22855  },
22856  // 0:00 - WET 1980 Apr 6 0:00s
22857  {
22858  NULL /*zone_policy*/,
22859  "WET" /*format*/,
22860  0 /*offset_code (0/15)*/,
22861  0 /*offset_remainder (0%15)*/,
22862  0 /*delta_minutes*/,
22863  1980 /*until_year*/,
22864  4 /*until_month*/,
22865  6 /*until_day*/,
22866  0 /*until_time_code (0/15)*/,
22867  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
22868  },
22869  // 0:00 1:00 WEST 1980 Sep 28 1:00u
22870  {
22871  NULL /*zone_policy*/,
22872  "WEST" /*format*/,
22873  0 /*offset_code (0/15)*/,
22874  0 /*offset_remainder (0%15)*/,
22875  60 /*delta_minutes*/,
22876  1980 /*until_year*/,
22877  9 /*until_month*/,
22878  28 /*until_day*/,
22879  240 /*until_time_code (3600/15)*/,
22880  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
22881  },
22882  // 0:00 EU WE%sT
22883  {
22884  &kAtcAllZonePolicyEU /*zone_policy*/,
22885  "WE%T" /*format*/,
22886  0 /*offset_code (0/15)*/,
22887  0 /*offset_remainder (0%15)*/,
22888  0 /*delta_minutes*/,
22889  32767 /*until_year*/,
22890  1 /*until_month*/,
22891  1 /*until_day*/,
22892  0 /*until_time_code (0/15)*/,
22893  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22894  },
22895 
22896 };
22897 
22898 static const char kAtcZoneNameAtlantic_Canary[] = "Atlantic/Canary";
22899 
22900 const AtcZoneInfo kAtcAllZoneAtlantic_Canary = {
22901  kAtcZoneNameAtlantic_Canary /*name*/,
22902  0xfc23f2c2 /*zone_id*/,
22903  &kAtcAllZoneContext /*zone_context*/,
22904  5 /*num_eras*/,
22905  kAtcZoneEraAtlantic_Canary /*eras*/,
22906  NULL /*target_info*/,
22907 };
22908 
22909 //---------------------------------------------------------------------------
22910 // Zone name: Atlantic/Cape_Verde
22911 // Zone Eras: 5
22912 //---------------------------------------------------------------------------
22913 
22914 static const AtcZoneEra kAtcZoneEraAtlantic_Cape_Verde[] = {
22915  // -1:34:04 - LMT 1912 Jan 01 2:00u
22916  {
22917  NULL /*zone_policy*/,
22918  "LMT" /*format*/,
22919  -377 /*offset_code (-5644/15)*/,
22920  11 /*offset_remainder (-5644%15)*/,
22921  0 /*delta_minutes*/,
22922  1912 /*until_year*/,
22923  1 /*until_month*/,
22924  1 /*until_day*/,
22925  480 /*until_time_code (7200/15)*/,
22926  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
22927  },
22928  // -2:00 - -02 1942 Sep
22929  {
22930  NULL /*zone_policy*/,
22931  "-02" /*format*/,
22932  -480 /*offset_code (-7200/15)*/,
22933  0 /*offset_remainder (-7200%15)*/,
22934  0 /*delta_minutes*/,
22935  1942 /*until_year*/,
22936  9 /*until_month*/,
22937  1 /*until_day*/,
22938  0 /*until_time_code (0/15)*/,
22939  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22940  },
22941  // -2:00 1:00 -01 1945 Oct 15
22942  {
22943  NULL /*zone_policy*/,
22944  "-01" /*format*/,
22945  -480 /*offset_code (-7200/15)*/,
22946  0 /*offset_remainder (-7200%15)*/,
22947  60 /*delta_minutes*/,
22948  1945 /*until_year*/,
22949  10 /*until_month*/,
22950  15 /*until_day*/,
22951  0 /*until_time_code (0/15)*/,
22952  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22953  },
22954  // -2:00 - -02 1975 Nov 25 2:00
22955  {
22956  NULL /*zone_policy*/,
22957  "-02" /*format*/,
22958  -480 /*offset_code (-7200/15)*/,
22959  0 /*offset_remainder (-7200%15)*/,
22960  0 /*delta_minutes*/,
22961  1975 /*until_year*/,
22962  11 /*until_month*/,
22963  25 /*until_day*/,
22964  480 /*until_time_code (7200/15)*/,
22965  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22966  },
22967  // -1:00 - -01
22968  {
22969  NULL /*zone_policy*/,
22970  "-01" /*format*/,
22971  -240 /*offset_code (-3600/15)*/,
22972  0 /*offset_remainder (-3600%15)*/,
22973  0 /*delta_minutes*/,
22974  32767 /*until_year*/,
22975  1 /*until_month*/,
22976  1 /*until_day*/,
22977  0 /*until_time_code (0/15)*/,
22978  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
22979  },
22980 
22981 };
22982 
22983 static const char kAtcZoneNameAtlantic_Cape_Verde[] = "Atlantic/Cape_Verde";
22984 
22985 const AtcZoneInfo kAtcAllZoneAtlantic_Cape_Verde = {
22986  kAtcZoneNameAtlantic_Cape_Verde /*name*/,
22987  0x5c5e1772 /*zone_id*/,
22988  &kAtcAllZoneContext /*zone_context*/,
22989  5 /*num_eras*/,
22990  kAtcZoneEraAtlantic_Cape_Verde /*eras*/,
22991  NULL /*target_info*/,
22992 };
22993 
22994 //---------------------------------------------------------------------------
22995 // Zone name: Atlantic/Faroe
22996 // Zone Eras: 3
22997 //---------------------------------------------------------------------------
22998 
22999 static const AtcZoneEra kAtcZoneEraAtlantic_Faroe[] = {
23000  // -0:27:04 - LMT 1908 Jan 11
23001  {
23002  NULL /*zone_policy*/,
23003  "LMT" /*format*/,
23004  -109 /*offset_code (-1624/15)*/,
23005  11 /*offset_remainder (-1624%15)*/,
23006  0 /*delta_minutes*/,
23007  1908 /*until_year*/,
23008  1 /*until_month*/,
23009  11 /*until_day*/,
23010  0 /*until_time_code (0/15)*/,
23011  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23012  },
23013  // 0:00 - WET 1981
23014  {
23015  NULL /*zone_policy*/,
23016  "WET" /*format*/,
23017  0 /*offset_code (0/15)*/,
23018  0 /*offset_remainder (0%15)*/,
23019  0 /*delta_minutes*/,
23020  1981 /*until_year*/,
23021  1 /*until_month*/,
23022  1 /*until_day*/,
23023  0 /*until_time_code (0/15)*/,
23024  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23025  },
23026  // 0:00 EU WE%sT
23027  {
23028  &kAtcAllZonePolicyEU /*zone_policy*/,
23029  "WE%T" /*format*/,
23030  0 /*offset_code (0/15)*/,
23031  0 /*offset_remainder (0%15)*/,
23032  0 /*delta_minutes*/,
23033  32767 /*until_year*/,
23034  1 /*until_month*/,
23035  1 /*until_day*/,
23036  0 /*until_time_code (0/15)*/,
23037  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23038  },
23039 
23040 };
23041 
23042 static const char kAtcZoneNameAtlantic_Faroe[] = "Atlantic/Faroe";
23043 
23044 const AtcZoneInfo kAtcAllZoneAtlantic_Faroe = {
23045  kAtcZoneNameAtlantic_Faroe /*name*/,
23046  0xe110a971 /*zone_id*/,
23047  &kAtcAllZoneContext /*zone_context*/,
23048  3 /*num_eras*/,
23049  kAtcZoneEraAtlantic_Faroe /*eras*/,
23050  NULL /*target_info*/,
23051 };
23052 
23053 //---------------------------------------------------------------------------
23054 // Zone name: Atlantic/Madeira
23055 // Zone Eras: 13
23056 //---------------------------------------------------------------------------
23057 
23058 static const AtcZoneEra kAtcZoneEraAtlantic_Madeira[] = {
23059  // -1:07:36 - LMT 1884
23060  {
23061  NULL /*zone_policy*/,
23062  "LMT" /*format*/,
23063  -271 /*offset_code (-4056/15)*/,
23064  9 /*offset_remainder (-4056%15)*/,
23065  0 /*delta_minutes*/,
23066  1884 /*until_year*/,
23067  1 /*until_month*/,
23068  1 /*until_day*/,
23069  0 /*until_time_code (0/15)*/,
23070  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23071  },
23072  // -1:07:36 - FMT 1912 Jan 1 1:00u
23073  {
23074  NULL /*zone_policy*/,
23075  "FMT" /*format*/,
23076  -271 /*offset_code (-4056/15)*/,
23077  9 /*offset_remainder (-4056%15)*/,
23078  0 /*delta_minutes*/,
23079  1912 /*until_year*/,
23080  1 /*until_month*/,
23081  1 /*until_day*/,
23082  240 /*until_time_code (3600/15)*/,
23083  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
23084  },
23085  // -1:00 Port -01/+00 1942 Apr 25 22:00s
23086  {
23087  &kAtcAllZonePolicyPort /*zone_policy*/,
23088  "-01/+00" /*format*/,
23089  -240 /*offset_code (-3600/15)*/,
23090  0 /*offset_remainder (-3600%15)*/,
23091  0 /*delta_minutes*/,
23092  1942 /*until_year*/,
23093  4 /*until_month*/,
23094  25 /*until_day*/,
23095  5280 /*until_time_code (79200/15)*/,
23096  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23097  },
23098  // -1:00 Port +01 1942 Aug 15 22:00s
23099  {
23100  &kAtcAllZonePolicyPort /*zone_policy*/,
23101  "+01" /*format*/,
23102  -240 /*offset_code (-3600/15)*/,
23103  0 /*offset_remainder (-3600%15)*/,
23104  0 /*delta_minutes*/,
23105  1942 /*until_year*/,
23106  8 /*until_month*/,
23107  15 /*until_day*/,
23108  5280 /*until_time_code (79200/15)*/,
23109  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23110  },
23111  // -1:00 Port -01/+00 1943 Apr 17 22:00s
23112  {
23113  &kAtcAllZonePolicyPort /*zone_policy*/,
23114  "-01/+00" /*format*/,
23115  -240 /*offset_code (-3600/15)*/,
23116  0 /*offset_remainder (-3600%15)*/,
23117  0 /*delta_minutes*/,
23118  1943 /*until_year*/,
23119  4 /*until_month*/,
23120  17 /*until_day*/,
23121  5280 /*until_time_code (79200/15)*/,
23122  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23123  },
23124  // -1:00 Port +01 1943 Aug 28 22:00s
23125  {
23126  &kAtcAllZonePolicyPort /*zone_policy*/,
23127  "+01" /*format*/,
23128  -240 /*offset_code (-3600/15)*/,
23129  0 /*offset_remainder (-3600%15)*/,
23130  0 /*delta_minutes*/,
23131  1943 /*until_year*/,
23132  8 /*until_month*/,
23133  28 /*until_day*/,
23134  5280 /*until_time_code (79200/15)*/,
23135  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23136  },
23137  // -1:00 Port -01/+00 1944 Apr 22 22:00s
23138  {
23139  &kAtcAllZonePolicyPort /*zone_policy*/,
23140  "-01/+00" /*format*/,
23141  -240 /*offset_code (-3600/15)*/,
23142  0 /*offset_remainder (-3600%15)*/,
23143  0 /*delta_minutes*/,
23144  1944 /*until_year*/,
23145  4 /*until_month*/,
23146  22 /*until_day*/,
23147  5280 /*until_time_code (79200/15)*/,
23148  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23149  },
23150  // -1:00 Port +01 1944 Aug 26 22:00s
23151  {
23152  &kAtcAllZonePolicyPort /*zone_policy*/,
23153  "+01" /*format*/,
23154  -240 /*offset_code (-3600/15)*/,
23155  0 /*offset_remainder (-3600%15)*/,
23156  0 /*delta_minutes*/,
23157  1944 /*until_year*/,
23158  8 /*until_month*/,
23159  26 /*until_day*/,
23160  5280 /*until_time_code (79200/15)*/,
23161  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23162  },
23163  // -1:00 Port -01/+00 1945 Apr 21 22:00s
23164  {
23165  &kAtcAllZonePolicyPort /*zone_policy*/,
23166  "-01/+00" /*format*/,
23167  -240 /*offset_code (-3600/15)*/,
23168  0 /*offset_remainder (-3600%15)*/,
23169  0 /*delta_minutes*/,
23170  1945 /*until_year*/,
23171  4 /*until_month*/,
23172  21 /*until_day*/,
23173  5280 /*until_time_code (79200/15)*/,
23174  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23175  },
23176  // -1:00 Port +01 1945 Aug 25 22:00s
23177  {
23178  &kAtcAllZonePolicyPort /*zone_policy*/,
23179  "+01" /*format*/,
23180  -240 /*offset_code (-3600/15)*/,
23181  0 /*offset_remainder (-3600%15)*/,
23182  0 /*delta_minutes*/,
23183  1945 /*until_year*/,
23184  8 /*until_month*/,
23185  25 /*until_day*/,
23186  5280 /*until_time_code (79200/15)*/,
23187  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23188  },
23189  // -1:00 Port -01/+00 1966 Apr 3 2:00
23190  {
23191  &kAtcAllZonePolicyPort /*zone_policy*/,
23192  "-01/+00" /*format*/,
23193  -240 /*offset_code (-3600/15)*/,
23194  0 /*offset_remainder (-3600%15)*/,
23195  0 /*delta_minutes*/,
23196  1966 /*until_year*/,
23197  4 /*until_month*/,
23198  3 /*until_day*/,
23199  480 /*until_time_code (7200/15)*/,
23200  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23201  },
23202  // 0:00 Port WE%sT 1983 Sep 25 1:00s
23203  {
23204  &kAtcAllZonePolicyPort /*zone_policy*/,
23205  "WE%T" /*format*/,
23206  0 /*offset_code (0/15)*/,
23207  0 /*offset_remainder (0%15)*/,
23208  0 /*delta_minutes*/,
23209  1983 /*until_year*/,
23210  9 /*until_month*/,
23211  25 /*until_day*/,
23212  240 /*until_time_code (3600/15)*/,
23213  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
23214  },
23215  // 0:00 EU WE%sT
23216  {
23217  &kAtcAllZonePolicyEU /*zone_policy*/,
23218  "WE%T" /*format*/,
23219  0 /*offset_code (0/15)*/,
23220  0 /*offset_remainder (0%15)*/,
23221  0 /*delta_minutes*/,
23222  32767 /*until_year*/,
23223  1 /*until_month*/,
23224  1 /*until_day*/,
23225  0 /*until_time_code (0/15)*/,
23226  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23227  },
23228 
23229 };
23230 
23231 static const char kAtcZoneNameAtlantic_Madeira[] = "Atlantic/Madeira";
23232 
23233 const AtcZoneInfo kAtcAllZoneAtlantic_Madeira = {
23234  kAtcZoneNameAtlantic_Madeira /*name*/,
23235  0x81b5c037 /*zone_id*/,
23236  &kAtcAllZoneContext /*zone_context*/,
23237  13 /*num_eras*/,
23238  kAtcZoneEraAtlantic_Madeira /*eras*/,
23239  NULL /*target_info*/,
23240 };
23241 
23242 //---------------------------------------------------------------------------
23243 // Zone name: Atlantic/South_Georgia
23244 // Zone Eras: 2
23245 //---------------------------------------------------------------------------
23246 
23247 static const AtcZoneEra kAtcZoneEraAtlantic_South_Georgia[] = {
23248  // -2:26:08 - LMT 1890
23249  {
23250  NULL /*zone_policy*/,
23251  "LMT" /*format*/,
23252  -585 /*offset_code (-8768/15)*/,
23253  7 /*offset_remainder (-8768%15)*/,
23254  0 /*delta_minutes*/,
23255  1890 /*until_year*/,
23256  1 /*until_month*/,
23257  1 /*until_day*/,
23258  0 /*until_time_code (0/15)*/,
23259  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23260  },
23261  // -2:00 - -02
23262  {
23263  NULL /*zone_policy*/,
23264  "-02" /*format*/,
23265  -480 /*offset_code (-7200/15)*/,
23266  0 /*offset_remainder (-7200%15)*/,
23267  0 /*delta_minutes*/,
23268  32767 /*until_year*/,
23269  1 /*until_month*/,
23270  1 /*until_day*/,
23271  0 /*until_time_code (0/15)*/,
23272  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23273  },
23274 
23275 };
23276 
23277 static const char kAtcZoneNameAtlantic_South_Georgia[] = "Atlantic/South_Georgia";
23278 
23279 const AtcZoneInfo kAtcAllZoneAtlantic_South_Georgia = {
23280  kAtcZoneNameAtlantic_South_Georgia /*name*/,
23281  0x33013174 /*zone_id*/,
23282  &kAtcAllZoneContext /*zone_context*/,
23283  2 /*num_eras*/,
23284  kAtcZoneEraAtlantic_South_Georgia /*eras*/,
23285  NULL /*target_info*/,
23286 };
23287 
23288 //---------------------------------------------------------------------------
23289 // Zone name: Atlantic/Stanley
23290 // Zone Eras: 6
23291 //---------------------------------------------------------------------------
23292 
23293 static const AtcZoneEra kAtcZoneEraAtlantic_Stanley[] = {
23294  // -3:51:24 - LMT 1890
23295  {
23296  NULL /*zone_policy*/,
23297  "LMT" /*format*/,
23298  -926 /*offset_code (-13884/15)*/,
23299  6 /*offset_remainder (-13884%15)*/,
23300  0 /*delta_minutes*/,
23301  1890 /*until_year*/,
23302  1 /*until_month*/,
23303  1 /*until_day*/,
23304  0 /*until_time_code (0/15)*/,
23305  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23306  },
23307  // -3:51:24 - SMT 1912 Mar 12
23308  {
23309  NULL /*zone_policy*/,
23310  "SMT" /*format*/,
23311  -926 /*offset_code (-13884/15)*/,
23312  6 /*offset_remainder (-13884%15)*/,
23313  0 /*delta_minutes*/,
23314  1912 /*until_year*/,
23315  3 /*until_month*/,
23316  12 /*until_day*/,
23317  0 /*until_time_code (0/15)*/,
23318  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23319  },
23320  // -4:00 Falk -04/-03 1983 May
23321  {
23322  &kAtcAllZonePolicyFalk /*zone_policy*/,
23323  "-04/-03" /*format*/,
23324  -960 /*offset_code (-14400/15)*/,
23325  0 /*offset_remainder (-14400%15)*/,
23326  0 /*delta_minutes*/,
23327  1983 /*until_year*/,
23328  5 /*until_month*/,
23329  1 /*until_day*/,
23330  0 /*until_time_code (0/15)*/,
23331  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23332  },
23333  // -3:00 Falk -03/-02 1985 Sep 15
23334  {
23335  &kAtcAllZonePolicyFalk /*zone_policy*/,
23336  "-03/-02" /*format*/,
23337  -720 /*offset_code (-10800/15)*/,
23338  0 /*offset_remainder (-10800%15)*/,
23339  0 /*delta_minutes*/,
23340  1985 /*until_year*/,
23341  9 /*until_month*/,
23342  15 /*until_day*/,
23343  0 /*until_time_code (0/15)*/,
23344  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23345  },
23346  // -4:00 Falk -04/-03 2010 Sep 5 2:00
23347  {
23348  &kAtcAllZonePolicyFalk /*zone_policy*/,
23349  "-04/-03" /*format*/,
23350  -960 /*offset_code (-14400/15)*/,
23351  0 /*offset_remainder (-14400%15)*/,
23352  0 /*delta_minutes*/,
23353  2010 /*until_year*/,
23354  9 /*until_month*/,
23355  5 /*until_day*/,
23356  480 /*until_time_code (7200/15)*/,
23357  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23358  },
23359  // -3:00 - -03
23360  {
23361  NULL /*zone_policy*/,
23362  "-03" /*format*/,
23363  -720 /*offset_code (-10800/15)*/,
23364  0 /*offset_remainder (-10800%15)*/,
23365  0 /*delta_minutes*/,
23366  32767 /*until_year*/,
23367  1 /*until_month*/,
23368  1 /*until_day*/,
23369  0 /*until_time_code (0/15)*/,
23370  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23371  },
23372 
23373 };
23374 
23375 static const char kAtcZoneNameAtlantic_Stanley[] = "Atlantic/Stanley";
23376 
23377 const AtcZoneInfo kAtcAllZoneAtlantic_Stanley = {
23378  kAtcZoneNameAtlantic_Stanley /*name*/,
23379  0x7bb3e1c4 /*zone_id*/,
23380  &kAtcAllZoneContext /*zone_context*/,
23381  6 /*num_eras*/,
23382  kAtcZoneEraAtlantic_Stanley /*eras*/,
23383  NULL /*target_info*/,
23384 };
23385 
23386 //---------------------------------------------------------------------------
23387 // Zone name: Australia/Adelaide
23388 // Zone Eras: 4
23389 //---------------------------------------------------------------------------
23390 
23391 static const AtcZoneEra kAtcZoneEraAustralia_Adelaide[] = {
23392  // 9:14:20 - LMT 1895 Feb
23393  {
23394  NULL /*zone_policy*/,
23395  "LMT" /*format*/,
23396  2217 /*offset_code (33260/15)*/,
23397  5 /*offset_remainder (33260%15)*/,
23398  0 /*delta_minutes*/,
23399  1895 /*until_year*/,
23400  2 /*until_month*/,
23401  1 /*until_day*/,
23402  0 /*until_time_code (0/15)*/,
23403  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23404  },
23405  // 9:00 - ACST 1899 May
23406  {
23407  NULL /*zone_policy*/,
23408  "ACST" /*format*/,
23409  2160 /*offset_code (32400/15)*/,
23410  0 /*offset_remainder (32400%15)*/,
23411  0 /*delta_minutes*/,
23412  1899 /*until_year*/,
23413  5 /*until_month*/,
23414  1 /*until_day*/,
23415  0 /*until_time_code (0/15)*/,
23416  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23417  },
23418  // 9:30 Aus AC%sT 1971
23419  {
23420  &kAtcAllZonePolicyAus /*zone_policy*/,
23421  "AC%T" /*format*/,
23422  2280 /*offset_code (34200/15)*/,
23423  0 /*offset_remainder (34200%15)*/,
23424  0 /*delta_minutes*/,
23425  1971 /*until_year*/,
23426  1 /*until_month*/,
23427  1 /*until_day*/,
23428  0 /*until_time_code (0/15)*/,
23429  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23430  },
23431  // 9:30 AS AC%sT
23432  {
23433  &kAtcAllZonePolicyAS /*zone_policy*/,
23434  "AC%T" /*format*/,
23435  2280 /*offset_code (34200/15)*/,
23436  0 /*offset_remainder (34200%15)*/,
23437  0 /*delta_minutes*/,
23438  32767 /*until_year*/,
23439  1 /*until_month*/,
23440  1 /*until_day*/,
23441  0 /*until_time_code (0/15)*/,
23442  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23443  },
23444 
23445 };
23446 
23447 static const char kAtcZoneNameAustralia_Adelaide[] = "Australia/Adelaide";
23448 
23449 const AtcZoneInfo kAtcAllZoneAustralia_Adelaide = {
23450  kAtcZoneNameAustralia_Adelaide /*name*/,
23451  0x2428e8a3 /*zone_id*/,
23452  &kAtcAllZoneContext /*zone_context*/,
23453  4 /*num_eras*/,
23454  kAtcZoneEraAustralia_Adelaide /*eras*/,
23455  NULL /*target_info*/,
23456 };
23457 
23458 //---------------------------------------------------------------------------
23459 // Zone name: Australia/Brisbane
23460 // Zone Eras: 3
23461 //---------------------------------------------------------------------------
23462 
23463 static const AtcZoneEra kAtcZoneEraAustralia_Brisbane[] = {
23464  // 10:12:08 - LMT 1895
23465  {
23466  NULL /*zone_policy*/,
23467  "LMT" /*format*/,
23468  2448 /*offset_code (36728/15)*/,
23469  8 /*offset_remainder (36728%15)*/,
23470  0 /*delta_minutes*/,
23471  1895 /*until_year*/,
23472  1 /*until_month*/,
23473  1 /*until_day*/,
23474  0 /*until_time_code (0/15)*/,
23475  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23476  },
23477  // 10:00 Aus AE%sT 1971
23478  {
23479  &kAtcAllZonePolicyAus /*zone_policy*/,
23480  "AE%T" /*format*/,
23481  2400 /*offset_code (36000/15)*/,
23482  0 /*offset_remainder (36000%15)*/,
23483  0 /*delta_minutes*/,
23484  1971 /*until_year*/,
23485  1 /*until_month*/,
23486  1 /*until_day*/,
23487  0 /*until_time_code (0/15)*/,
23488  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23489  },
23490  // 10:00 AQ AE%sT
23491  {
23492  &kAtcAllZonePolicyAQ /*zone_policy*/,
23493  "AE%T" /*format*/,
23494  2400 /*offset_code (36000/15)*/,
23495  0 /*offset_remainder (36000%15)*/,
23496  0 /*delta_minutes*/,
23497  32767 /*until_year*/,
23498  1 /*until_month*/,
23499  1 /*until_day*/,
23500  0 /*until_time_code (0/15)*/,
23501  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23502  },
23503 
23504 };
23505 
23506 static const char kAtcZoneNameAustralia_Brisbane[] = "Australia/Brisbane";
23507 
23508 const AtcZoneInfo kAtcAllZoneAustralia_Brisbane = {
23509  kAtcZoneNameAustralia_Brisbane /*name*/,
23510  0x4fedc9c0 /*zone_id*/,
23511  &kAtcAllZoneContext /*zone_context*/,
23512  3 /*num_eras*/,
23513  kAtcZoneEraAustralia_Brisbane /*eras*/,
23514  NULL /*target_info*/,
23515 };
23516 
23517 //---------------------------------------------------------------------------
23518 // Zone name: Australia/Broken_Hill
23519 // Zone Eras: 6
23520 //---------------------------------------------------------------------------
23521 
23522 static const AtcZoneEra kAtcZoneEraAustralia_Broken_Hill[] = {
23523  // 9:25:48 - LMT 1895 Feb
23524  {
23525  NULL /*zone_policy*/,
23526  "LMT" /*format*/,
23527  2263 /*offset_code (33948/15)*/,
23528  3 /*offset_remainder (33948%15)*/,
23529  0 /*delta_minutes*/,
23530  1895 /*until_year*/,
23531  2 /*until_month*/,
23532  1 /*until_day*/,
23533  0 /*until_time_code (0/15)*/,
23534  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23535  },
23536  // 10:00 - AEST 1896 Aug 23
23537  {
23538  NULL /*zone_policy*/,
23539  "AEST" /*format*/,
23540  2400 /*offset_code (36000/15)*/,
23541  0 /*offset_remainder (36000%15)*/,
23542  0 /*delta_minutes*/,
23543  1896 /*until_year*/,
23544  8 /*until_month*/,
23545  23 /*until_day*/,
23546  0 /*until_time_code (0/15)*/,
23547  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23548  },
23549  // 9:00 - ACST 1899 May
23550  {
23551  NULL /*zone_policy*/,
23552  "ACST" /*format*/,
23553  2160 /*offset_code (32400/15)*/,
23554  0 /*offset_remainder (32400%15)*/,
23555  0 /*delta_minutes*/,
23556  1899 /*until_year*/,
23557  5 /*until_month*/,
23558  1 /*until_day*/,
23559  0 /*until_time_code (0/15)*/,
23560  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23561  },
23562  // 9:30 Aus AC%sT 1971
23563  {
23564  &kAtcAllZonePolicyAus /*zone_policy*/,
23565  "AC%T" /*format*/,
23566  2280 /*offset_code (34200/15)*/,
23567  0 /*offset_remainder (34200%15)*/,
23568  0 /*delta_minutes*/,
23569  1971 /*until_year*/,
23570  1 /*until_month*/,
23571  1 /*until_day*/,
23572  0 /*until_time_code (0/15)*/,
23573  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23574  },
23575  // 9:30 AN AC%sT 2000
23576  {
23577  &kAtcAllZonePolicyAN /*zone_policy*/,
23578  "AC%T" /*format*/,
23579  2280 /*offset_code (34200/15)*/,
23580  0 /*offset_remainder (34200%15)*/,
23581  0 /*delta_minutes*/,
23582  2000 /*until_year*/,
23583  1 /*until_month*/,
23584  1 /*until_day*/,
23585  0 /*until_time_code (0/15)*/,
23586  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23587  },
23588  // 9:30 AS AC%sT
23589  {
23590  &kAtcAllZonePolicyAS /*zone_policy*/,
23591  "AC%T" /*format*/,
23592  2280 /*offset_code (34200/15)*/,
23593  0 /*offset_remainder (34200%15)*/,
23594  0 /*delta_minutes*/,
23595  32767 /*until_year*/,
23596  1 /*until_month*/,
23597  1 /*until_day*/,
23598  0 /*until_time_code (0/15)*/,
23599  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23600  },
23601 
23602 };
23603 
23604 static const char kAtcZoneNameAustralia_Broken_Hill[] = "Australia/Broken_Hill";
23605 
23606 const AtcZoneInfo kAtcAllZoneAustralia_Broken_Hill = {
23607  kAtcZoneNameAustralia_Broken_Hill /*name*/,
23608  0xb06eada3 /*zone_id*/,
23609  &kAtcAllZoneContext /*zone_context*/,
23610  6 /*num_eras*/,
23611  kAtcZoneEraAustralia_Broken_Hill /*eras*/,
23612  NULL /*target_info*/,
23613 };
23614 
23615 //---------------------------------------------------------------------------
23616 // Zone name: Australia/Darwin
23617 // Zone Eras: 3
23618 //---------------------------------------------------------------------------
23619 
23620 static const AtcZoneEra kAtcZoneEraAustralia_Darwin[] = {
23621  // 8:43:20 - LMT 1895 Feb
23622  {
23623  NULL /*zone_policy*/,
23624  "LMT" /*format*/,
23625  2093 /*offset_code (31400/15)*/,
23626  5 /*offset_remainder (31400%15)*/,
23627  0 /*delta_minutes*/,
23628  1895 /*until_year*/,
23629  2 /*until_month*/,
23630  1 /*until_day*/,
23631  0 /*until_time_code (0/15)*/,
23632  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23633  },
23634  // 9:00 - ACST 1899 May
23635  {
23636  NULL /*zone_policy*/,
23637  "ACST" /*format*/,
23638  2160 /*offset_code (32400/15)*/,
23639  0 /*offset_remainder (32400%15)*/,
23640  0 /*delta_minutes*/,
23641  1899 /*until_year*/,
23642  5 /*until_month*/,
23643  1 /*until_day*/,
23644  0 /*until_time_code (0/15)*/,
23645  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23646  },
23647  // 9:30 Aus AC%sT
23648  {
23649  &kAtcAllZonePolicyAus /*zone_policy*/,
23650  "AC%T" /*format*/,
23651  2280 /*offset_code (34200/15)*/,
23652  0 /*offset_remainder (34200%15)*/,
23653  0 /*delta_minutes*/,
23654  32767 /*until_year*/,
23655  1 /*until_month*/,
23656  1 /*until_day*/,
23657  0 /*until_time_code (0/15)*/,
23658  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23659  },
23660 
23661 };
23662 
23663 static const char kAtcZoneNameAustralia_Darwin[] = "Australia/Darwin";
23664 
23665 const AtcZoneInfo kAtcAllZoneAustralia_Darwin = {
23666  kAtcZoneNameAustralia_Darwin /*name*/,
23667  0x2876bdff /*zone_id*/,
23668  &kAtcAllZoneContext /*zone_context*/,
23669  3 /*num_eras*/,
23670  kAtcZoneEraAustralia_Darwin /*eras*/,
23671  NULL /*target_info*/,
23672 };
23673 
23674 //---------------------------------------------------------------------------
23675 // Zone name: Australia/Eucla
23676 // Zone Eras: 3
23677 //---------------------------------------------------------------------------
23678 
23679 static const AtcZoneEra kAtcZoneEraAustralia_Eucla[] = {
23680  // 8:35:28 - LMT 1895 Dec
23681  {
23682  NULL /*zone_policy*/,
23683  "LMT" /*format*/,
23684  2061 /*offset_code (30928/15)*/,
23685  13 /*offset_remainder (30928%15)*/,
23686  0 /*delta_minutes*/,
23687  1895 /*until_year*/,
23688  12 /*until_month*/,
23689  1 /*until_day*/,
23690  0 /*until_time_code (0/15)*/,
23691  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23692  },
23693  // 8:45 Aus +0845/+0945 1943 Jul
23694  {
23695  &kAtcAllZonePolicyAus /*zone_policy*/,
23696  "+0845/+0945" /*format*/,
23697  2100 /*offset_code (31500/15)*/,
23698  0 /*offset_remainder (31500%15)*/,
23699  0 /*delta_minutes*/,
23700  1943 /*until_year*/,
23701  7 /*until_month*/,
23702  1 /*until_day*/,
23703  0 /*until_time_code (0/15)*/,
23704  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23705  },
23706  // 8:45 AW +0845/+0945
23707  {
23708  &kAtcAllZonePolicyAW /*zone_policy*/,
23709  "+0845/+0945" /*format*/,
23710  2100 /*offset_code (31500/15)*/,
23711  0 /*offset_remainder (31500%15)*/,
23712  0 /*delta_minutes*/,
23713  32767 /*until_year*/,
23714  1 /*until_month*/,
23715  1 /*until_day*/,
23716  0 /*until_time_code (0/15)*/,
23717  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23718  },
23719 
23720 };
23721 
23722 static const char kAtcZoneNameAustralia_Eucla[] = "Australia/Eucla";
23723 
23724 const AtcZoneInfo kAtcAllZoneAustralia_Eucla = {
23725  kAtcZoneNameAustralia_Eucla /*name*/,
23726  0x8cf99e44 /*zone_id*/,
23727  &kAtcAllZoneContext /*zone_context*/,
23728  3 /*num_eras*/,
23729  kAtcZoneEraAustralia_Eucla /*eras*/,
23730  NULL /*target_info*/,
23731 };
23732 
23733 //---------------------------------------------------------------------------
23734 // Zone name: Australia/Hobart
23735 // Zone Eras: 4
23736 //---------------------------------------------------------------------------
23737 
23738 static const AtcZoneEra kAtcZoneEraAustralia_Hobart[] = {
23739  // 9:49:16 - LMT 1895 Sep
23740  {
23741  NULL /*zone_policy*/,
23742  "LMT" /*format*/,
23743  2357 /*offset_code (35356/15)*/,
23744  1 /*offset_remainder (35356%15)*/,
23745  0 /*delta_minutes*/,
23746  1895 /*until_year*/,
23747  9 /*until_month*/,
23748  1 /*until_day*/,
23749  0 /*until_time_code (0/15)*/,
23750  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23751  },
23752  // 10:00 AT AE%sT 1919 Oct 24
23753  {
23754  &kAtcAllZonePolicyAT /*zone_policy*/,
23755  "AE%T" /*format*/,
23756  2400 /*offset_code (36000/15)*/,
23757  0 /*offset_remainder (36000%15)*/,
23758  0 /*delta_minutes*/,
23759  1919 /*until_year*/,
23760  10 /*until_month*/,
23761  24 /*until_day*/,
23762  0 /*until_time_code (0/15)*/,
23763  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23764  },
23765  // 10:00 Aus AE%sT 1967
23766  {
23767  &kAtcAllZonePolicyAus /*zone_policy*/,
23768  "AE%T" /*format*/,
23769  2400 /*offset_code (36000/15)*/,
23770  0 /*offset_remainder (36000%15)*/,
23771  0 /*delta_minutes*/,
23772  1967 /*until_year*/,
23773  1 /*until_month*/,
23774  1 /*until_day*/,
23775  0 /*until_time_code (0/15)*/,
23776  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23777  },
23778  // 10:00 AT AE%sT
23779  {
23780  &kAtcAllZonePolicyAT /*zone_policy*/,
23781  "AE%T" /*format*/,
23782  2400 /*offset_code (36000/15)*/,
23783  0 /*offset_remainder (36000%15)*/,
23784  0 /*delta_minutes*/,
23785  32767 /*until_year*/,
23786  1 /*until_month*/,
23787  1 /*until_day*/,
23788  0 /*until_time_code (0/15)*/,
23789  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23790  },
23791 
23792 };
23793 
23794 static const char kAtcZoneNameAustralia_Hobart[] = "Australia/Hobart";
23795 
23796 const AtcZoneInfo kAtcAllZoneAustralia_Hobart = {
23797  kAtcZoneNameAustralia_Hobart /*name*/,
23798  0x32bf951a /*zone_id*/,
23799  &kAtcAllZoneContext /*zone_context*/,
23800  4 /*num_eras*/,
23801  kAtcZoneEraAustralia_Hobart /*eras*/,
23802  NULL /*target_info*/,
23803 };
23804 
23805 //---------------------------------------------------------------------------
23806 // Zone name: Australia/Lindeman
23807 // Zone Eras: 4
23808 //---------------------------------------------------------------------------
23809 
23810 static const AtcZoneEra kAtcZoneEraAustralia_Lindeman[] = {
23811  // 9:55:56 - LMT 1895
23812  {
23813  NULL /*zone_policy*/,
23814  "LMT" /*format*/,
23815  2383 /*offset_code (35756/15)*/,
23816  11 /*offset_remainder (35756%15)*/,
23817  0 /*delta_minutes*/,
23818  1895 /*until_year*/,
23819  1 /*until_month*/,
23820  1 /*until_day*/,
23821  0 /*until_time_code (0/15)*/,
23822  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23823  },
23824  // 10:00 Aus AE%sT 1971
23825  {
23826  &kAtcAllZonePolicyAus /*zone_policy*/,
23827  "AE%T" /*format*/,
23828  2400 /*offset_code (36000/15)*/,
23829  0 /*offset_remainder (36000%15)*/,
23830  0 /*delta_minutes*/,
23831  1971 /*until_year*/,
23832  1 /*until_month*/,
23833  1 /*until_day*/,
23834  0 /*until_time_code (0/15)*/,
23835  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23836  },
23837  // 10:00 AQ AE%sT 1992 Jul
23838  {
23839  &kAtcAllZonePolicyAQ /*zone_policy*/,
23840  "AE%T" /*format*/,
23841  2400 /*offset_code (36000/15)*/,
23842  0 /*offset_remainder (36000%15)*/,
23843  0 /*delta_minutes*/,
23844  1992 /*until_year*/,
23845  7 /*until_month*/,
23846  1 /*until_day*/,
23847  0 /*until_time_code (0/15)*/,
23848  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23849  },
23850  // 10:00 Holiday AE%sT
23851  {
23852  &kAtcAllZonePolicyHoliday /*zone_policy*/,
23853  "AE%T" /*format*/,
23854  2400 /*offset_code (36000/15)*/,
23855  0 /*offset_remainder (36000%15)*/,
23856  0 /*delta_minutes*/,
23857  32767 /*until_year*/,
23858  1 /*until_month*/,
23859  1 /*until_day*/,
23860  0 /*until_time_code (0/15)*/,
23861  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23862  },
23863 
23864 };
23865 
23866 static const char kAtcZoneNameAustralia_Lindeman[] = "Australia/Lindeman";
23867 
23868 const AtcZoneInfo kAtcAllZoneAustralia_Lindeman = {
23869  kAtcZoneNameAustralia_Lindeman /*name*/,
23870  0xe05029e2 /*zone_id*/,
23871  &kAtcAllZoneContext /*zone_context*/,
23872  4 /*num_eras*/,
23873  kAtcZoneEraAustralia_Lindeman /*eras*/,
23874  NULL /*target_info*/,
23875 };
23876 
23877 //---------------------------------------------------------------------------
23878 // Zone name: Australia/Lord_Howe
23879 // Zone Eras: 4
23880 //---------------------------------------------------------------------------
23881 
23882 static const AtcZoneEra kAtcZoneEraAustralia_Lord_Howe[] = {
23883  // 10:36:20 - LMT 1895 Feb
23884  {
23885  NULL /*zone_policy*/,
23886  "LMT" /*format*/,
23887  2545 /*offset_code (38180/15)*/,
23888  5 /*offset_remainder (38180%15)*/,
23889  0 /*delta_minutes*/,
23890  1895 /*until_year*/,
23891  2 /*until_month*/,
23892  1 /*until_day*/,
23893  0 /*until_time_code (0/15)*/,
23894  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23895  },
23896  // 10:00 - AEST 1981 Mar
23897  {
23898  NULL /*zone_policy*/,
23899  "AEST" /*format*/,
23900  2400 /*offset_code (36000/15)*/,
23901  0 /*offset_remainder (36000%15)*/,
23902  0 /*delta_minutes*/,
23903  1981 /*until_year*/,
23904  3 /*until_month*/,
23905  1 /*until_day*/,
23906  0 /*until_time_code (0/15)*/,
23907  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23908  },
23909  // 10:30 LH +1030/+1130 1985 Jul
23910  {
23911  &kAtcAllZonePolicyLH /*zone_policy*/,
23912  "+1030/+1130" /*format*/,
23913  2520 /*offset_code (37800/15)*/,
23914  0 /*offset_remainder (37800%15)*/,
23915  0 /*delta_minutes*/,
23916  1985 /*until_year*/,
23917  7 /*until_month*/,
23918  1 /*until_day*/,
23919  0 /*until_time_code (0/15)*/,
23920  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23921  },
23922  // 10:30 LH +1030/+11
23923  {
23924  &kAtcAllZonePolicyLH /*zone_policy*/,
23925  "+1030/+11" /*format*/,
23926  2520 /*offset_code (37800/15)*/,
23927  0 /*offset_remainder (37800%15)*/,
23928  0 /*delta_minutes*/,
23929  32767 /*until_year*/,
23930  1 /*until_month*/,
23931  1 /*until_day*/,
23932  0 /*until_time_code (0/15)*/,
23933  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23934  },
23935 
23936 };
23937 
23938 static const char kAtcZoneNameAustralia_Lord_Howe[] = "Australia/Lord_Howe";
23939 
23940 const AtcZoneInfo kAtcAllZoneAustralia_Lord_Howe = {
23941  kAtcZoneNameAustralia_Lord_Howe /*name*/,
23942  0xa748b67d /*zone_id*/,
23943  &kAtcAllZoneContext /*zone_context*/,
23944  4 /*num_eras*/,
23945  kAtcZoneEraAustralia_Lord_Howe /*eras*/,
23946  NULL /*target_info*/,
23947 };
23948 
23949 //---------------------------------------------------------------------------
23950 // Zone name: Australia/Melbourne
23951 // Zone Eras: 3
23952 //---------------------------------------------------------------------------
23953 
23954 static const AtcZoneEra kAtcZoneEraAustralia_Melbourne[] = {
23955  // 9:39:52 - LMT 1895 Feb
23956  {
23957  NULL /*zone_policy*/,
23958  "LMT" /*format*/,
23959  2319 /*offset_code (34792/15)*/,
23960  7 /*offset_remainder (34792%15)*/,
23961  0 /*delta_minutes*/,
23962  1895 /*until_year*/,
23963  2 /*until_month*/,
23964  1 /*until_day*/,
23965  0 /*until_time_code (0/15)*/,
23966  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23967  },
23968  // 10:00 Aus AE%sT 1971
23969  {
23970  &kAtcAllZonePolicyAus /*zone_policy*/,
23971  "AE%T" /*format*/,
23972  2400 /*offset_code (36000/15)*/,
23973  0 /*offset_remainder (36000%15)*/,
23974  0 /*delta_minutes*/,
23975  1971 /*until_year*/,
23976  1 /*until_month*/,
23977  1 /*until_day*/,
23978  0 /*until_time_code (0/15)*/,
23979  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23980  },
23981  // 10:00 AV AE%sT
23982  {
23983  &kAtcAllZonePolicyAV /*zone_policy*/,
23984  "AE%T" /*format*/,
23985  2400 /*offset_code (36000/15)*/,
23986  0 /*offset_remainder (36000%15)*/,
23987  0 /*delta_minutes*/,
23988  32767 /*until_year*/,
23989  1 /*until_month*/,
23990  1 /*until_day*/,
23991  0 /*until_time_code (0/15)*/,
23992  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
23993  },
23994 
23995 };
23996 
23997 static const char kAtcZoneNameAustralia_Melbourne[] = "Australia/Melbourne";
23998 
23999 const AtcZoneInfo kAtcAllZoneAustralia_Melbourne = {
24000  kAtcZoneNameAustralia_Melbourne /*name*/,
24001  0x0fe559a3 /*zone_id*/,
24002  &kAtcAllZoneContext /*zone_context*/,
24003  3 /*num_eras*/,
24004  kAtcZoneEraAustralia_Melbourne /*eras*/,
24005  NULL /*target_info*/,
24006 };
24007 
24008 //---------------------------------------------------------------------------
24009 // Zone name: Australia/Perth
24010 // Zone Eras: 3
24011 //---------------------------------------------------------------------------
24012 
24013 static const AtcZoneEra kAtcZoneEraAustralia_Perth[] = {
24014  // 7:43:24 - LMT 1895 Dec
24015  {
24016  NULL /*zone_policy*/,
24017  "LMT" /*format*/,
24018  1853 /*offset_code (27804/15)*/,
24019  9 /*offset_remainder (27804%15)*/,
24020  0 /*delta_minutes*/,
24021  1895 /*until_year*/,
24022  12 /*until_month*/,
24023  1 /*until_day*/,
24024  0 /*until_time_code (0/15)*/,
24025  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24026  },
24027  // 8:00 Aus AW%sT 1943 Jul
24028  {
24029  &kAtcAllZonePolicyAus /*zone_policy*/,
24030  "AW%T" /*format*/,
24031  1920 /*offset_code (28800/15)*/,
24032  0 /*offset_remainder (28800%15)*/,
24033  0 /*delta_minutes*/,
24034  1943 /*until_year*/,
24035  7 /*until_month*/,
24036  1 /*until_day*/,
24037  0 /*until_time_code (0/15)*/,
24038  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24039  },
24040  // 8:00 AW AW%sT
24041  {
24042  &kAtcAllZonePolicyAW /*zone_policy*/,
24043  "AW%T" /*format*/,
24044  1920 /*offset_code (28800/15)*/,
24045  0 /*offset_remainder (28800%15)*/,
24046  0 /*delta_minutes*/,
24047  32767 /*until_year*/,
24048  1 /*until_month*/,
24049  1 /*until_day*/,
24050  0 /*until_time_code (0/15)*/,
24051  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24052  },
24053 
24054 };
24055 
24056 static const char kAtcZoneNameAustralia_Perth[] = "Australia/Perth";
24057 
24058 const AtcZoneInfo kAtcAllZoneAustralia_Perth = {
24059  kAtcZoneNameAustralia_Perth /*name*/,
24060  0x8db8269d /*zone_id*/,
24061  &kAtcAllZoneContext /*zone_context*/,
24062  3 /*num_eras*/,
24063  kAtcZoneEraAustralia_Perth /*eras*/,
24064  NULL /*target_info*/,
24065 };
24066 
24067 //---------------------------------------------------------------------------
24068 // Zone name: Australia/Sydney
24069 // Zone Eras: 3
24070 //---------------------------------------------------------------------------
24071 
24072 static const AtcZoneEra kAtcZoneEraAustralia_Sydney[] = {
24073  // 10:04:52 - LMT 1895 Feb
24074  {
24075  NULL /*zone_policy*/,
24076  "LMT" /*format*/,
24077  2419 /*offset_code (36292/15)*/,
24078  7 /*offset_remainder (36292%15)*/,
24079  0 /*delta_minutes*/,
24080  1895 /*until_year*/,
24081  2 /*until_month*/,
24082  1 /*until_day*/,
24083  0 /*until_time_code (0/15)*/,
24084  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24085  },
24086  // 10:00 Aus AE%sT 1971
24087  {
24088  &kAtcAllZonePolicyAus /*zone_policy*/,
24089  "AE%T" /*format*/,
24090  2400 /*offset_code (36000/15)*/,
24091  0 /*offset_remainder (36000%15)*/,
24092  0 /*delta_minutes*/,
24093  1971 /*until_year*/,
24094  1 /*until_month*/,
24095  1 /*until_day*/,
24096  0 /*until_time_code (0/15)*/,
24097  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24098  },
24099  // 10:00 AN AE%sT
24100  {
24101  &kAtcAllZonePolicyAN /*zone_policy*/,
24102  "AE%T" /*format*/,
24103  2400 /*offset_code (36000/15)*/,
24104  0 /*offset_remainder (36000%15)*/,
24105  0 /*delta_minutes*/,
24106  32767 /*until_year*/,
24107  1 /*until_month*/,
24108  1 /*until_day*/,
24109  0 /*until_time_code (0/15)*/,
24110  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24111  },
24112 
24113 };
24114 
24115 static const char kAtcZoneNameAustralia_Sydney[] = "Australia/Sydney";
24116 
24117 const AtcZoneInfo kAtcAllZoneAustralia_Sydney = {
24118  kAtcZoneNameAustralia_Sydney /*name*/,
24119  0x4d1e9776 /*zone_id*/,
24120  &kAtcAllZoneContext /*zone_context*/,
24121  3 /*num_eras*/,
24122  kAtcZoneEraAustralia_Sydney /*eras*/,
24123  NULL /*target_info*/,
24124 };
24125 
24126 //---------------------------------------------------------------------------
24127 // Zone name: CET
24128 // Zone Eras: 1
24129 //---------------------------------------------------------------------------
24130 
24131 static const AtcZoneEra kAtcZoneEraCET[] = {
24132  // 1:00 C-Eur CE%sT
24133  {
24134  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
24135  "CE%T" /*format*/,
24136  240 /*offset_code (3600/15)*/,
24137  0 /*offset_remainder (3600%15)*/,
24138  0 /*delta_minutes*/,
24139  32767 /*until_year*/,
24140  1 /*until_month*/,
24141  1 /*until_day*/,
24142  0 /*until_time_code (0/15)*/,
24143  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24144  },
24145 
24146 };
24147 
24148 static const char kAtcZoneNameCET[] = "CET";
24149 
24150 const AtcZoneInfo kAtcAllZoneCET = {
24151  kAtcZoneNameCET /*name*/,
24152  0x0b87d921 /*zone_id*/,
24153  &kAtcAllZoneContext /*zone_context*/,
24154  1 /*num_eras*/,
24155  kAtcZoneEraCET /*eras*/,
24156  NULL /*target_info*/,
24157 };
24158 
24159 //---------------------------------------------------------------------------
24160 // Zone name: CST6CDT
24161 // Zone Eras: 1
24162 //---------------------------------------------------------------------------
24163 
24164 static const AtcZoneEra kAtcZoneEraCST6CDT[] = {
24165  // -6:00 US C%sT
24166  {
24167  &kAtcAllZonePolicyUS /*zone_policy*/,
24168  "C%T" /*format*/,
24169  -1440 /*offset_code (-21600/15)*/,
24170  0 /*offset_remainder (-21600%15)*/,
24171  0 /*delta_minutes*/,
24172  32767 /*until_year*/,
24173  1 /*until_month*/,
24174  1 /*until_day*/,
24175  0 /*until_time_code (0/15)*/,
24176  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24177  },
24178 
24179 };
24180 
24181 static const char kAtcZoneNameCST6CDT[] = "CST6CDT";
24182 
24183 const AtcZoneInfo kAtcAllZoneCST6CDT = {
24184  kAtcZoneNameCST6CDT /*name*/,
24185  0xf0e87d00 /*zone_id*/,
24186  &kAtcAllZoneContext /*zone_context*/,
24187  1 /*num_eras*/,
24188  kAtcZoneEraCST6CDT /*eras*/,
24189  NULL /*target_info*/,
24190 };
24191 
24192 //---------------------------------------------------------------------------
24193 // Zone name: EET
24194 // Zone Eras: 1
24195 //---------------------------------------------------------------------------
24196 
24197 static const AtcZoneEra kAtcZoneEraEET[] = {
24198  // 2:00 EU EE%sT
24199  {
24200  &kAtcAllZonePolicyEU /*zone_policy*/,
24201  "EE%T" /*format*/,
24202  480 /*offset_code (7200/15)*/,
24203  0 /*offset_remainder (7200%15)*/,
24204  0 /*delta_minutes*/,
24205  32767 /*until_year*/,
24206  1 /*until_month*/,
24207  1 /*until_day*/,
24208  0 /*until_time_code (0/15)*/,
24209  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24210  },
24211 
24212 };
24213 
24214 static const char kAtcZoneNameEET[] = "EET";
24215 
24216 const AtcZoneInfo kAtcAllZoneEET = {
24217  kAtcZoneNameEET /*name*/,
24218  0x0b87e1a3 /*zone_id*/,
24219  &kAtcAllZoneContext /*zone_context*/,
24220  1 /*num_eras*/,
24221  kAtcZoneEraEET /*eras*/,
24222  NULL /*target_info*/,
24223 };
24224 
24225 //---------------------------------------------------------------------------
24226 // Zone name: EST
24227 // Zone Eras: 1
24228 //---------------------------------------------------------------------------
24229 
24230 static const AtcZoneEra kAtcZoneEraEST[] = {
24231  // -5:00 - EST
24232  {
24233  NULL /*zone_policy*/,
24234  "EST" /*format*/,
24235  -1200 /*offset_code (-18000/15)*/,
24236  0 /*offset_remainder (-18000%15)*/,
24237  0 /*delta_minutes*/,
24238  32767 /*until_year*/,
24239  1 /*until_month*/,
24240  1 /*until_day*/,
24241  0 /*until_time_code (0/15)*/,
24242  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24243  },
24244 
24245 };
24246 
24247 static const char kAtcZoneNameEST[] = "EST";
24248 
24249 const AtcZoneInfo kAtcAllZoneEST = {
24250  kAtcZoneNameEST /*name*/,
24251  0x0b87e371 /*zone_id*/,
24252  &kAtcAllZoneContext /*zone_context*/,
24253  1 /*num_eras*/,
24254  kAtcZoneEraEST /*eras*/,
24255  NULL /*target_info*/,
24256 };
24257 
24258 //---------------------------------------------------------------------------
24259 // Zone name: EST5EDT
24260 // Zone Eras: 1
24261 //---------------------------------------------------------------------------
24262 
24263 static const AtcZoneEra kAtcZoneEraEST5EDT[] = {
24264  // -5:00 US E%sT
24265  {
24266  &kAtcAllZonePolicyUS /*zone_policy*/,
24267  "E%T" /*format*/,
24268  -1200 /*offset_code (-18000/15)*/,
24269  0 /*offset_remainder (-18000%15)*/,
24270  0 /*delta_minutes*/,
24271  32767 /*until_year*/,
24272  1 /*until_month*/,
24273  1 /*until_day*/,
24274  0 /*until_time_code (0/15)*/,
24275  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24276  },
24277 
24278 };
24279 
24280 static const char kAtcZoneNameEST5EDT[] = "EST5EDT";
24281 
24282 const AtcZoneInfo kAtcAllZoneEST5EDT = {
24283  kAtcZoneNameEST5EDT /*name*/,
24284  0x8adc72a3 /*zone_id*/,
24285  &kAtcAllZoneContext /*zone_context*/,
24286  1 /*num_eras*/,
24287  kAtcZoneEraEST5EDT /*eras*/,
24288  NULL /*target_info*/,
24289 };
24290 
24291 //---------------------------------------------------------------------------
24292 // Zone name: Etc/GMT
24293 // Zone Eras: 1
24294 //---------------------------------------------------------------------------
24295 
24296 static const AtcZoneEra kAtcZoneEraEtc_GMT[] = {
24297  // 0 - GMT
24298  {
24299  NULL /*zone_policy*/,
24300  "GMT" /*format*/,
24301  0 /*offset_code (0/15)*/,
24302  0 /*offset_remainder (0%15)*/,
24303  0 /*delta_minutes*/,
24304  32767 /*until_year*/,
24305  1 /*until_month*/,
24306  1 /*until_day*/,
24307  0 /*until_time_code (0/15)*/,
24308  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24309  },
24310 
24311 };
24312 
24313 static const char kAtcZoneNameEtc_GMT[] = "Etc/GMT";
24314 
24315 const AtcZoneInfo kAtcAllZoneEtc_GMT = {
24316  kAtcZoneNameEtc_GMT /*name*/,
24317  0xd8e2de58 /*zone_id*/,
24318  &kAtcAllZoneContext /*zone_context*/,
24319  1 /*num_eras*/,
24320  kAtcZoneEraEtc_GMT /*eras*/,
24321  NULL /*target_info*/,
24322 };
24323 
24324 //---------------------------------------------------------------------------
24325 // Zone name: Etc/GMT+1
24326 // Zone Eras: 1
24327 //---------------------------------------------------------------------------
24328 
24329 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_1[] = {
24330  // -1 - -01
24331  {
24332  NULL /*zone_policy*/,
24333  "-01" /*format*/,
24334  -240 /*offset_code (-3600/15)*/,
24335  0 /*offset_remainder (-3600%15)*/,
24336  0 /*delta_minutes*/,
24337  32767 /*until_year*/,
24338  1 /*until_month*/,
24339  1 /*until_day*/,
24340  0 /*until_time_code (0/15)*/,
24341  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24342  },
24343 
24344 };
24345 
24346 static const char kAtcZoneNameEtc_GMT_PLUS_1[] = "Etc/GMT+1";
24347 
24348 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_1 = {
24349  kAtcZoneNameEtc_GMT_PLUS_1 /*name*/,
24350  0x9d13da14 /*zone_id*/,
24351  &kAtcAllZoneContext /*zone_context*/,
24352  1 /*num_eras*/,
24353  kAtcZoneEraEtc_GMT_PLUS_1 /*eras*/,
24354  NULL /*target_info*/,
24355 };
24356 
24357 //---------------------------------------------------------------------------
24358 // Zone name: Etc/GMT+10
24359 // Zone Eras: 1
24360 //---------------------------------------------------------------------------
24361 
24362 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_10[] = {
24363  // -10 - -10
24364  {
24365  NULL /*zone_policy*/,
24366  "-10" /*format*/,
24367  -2400 /*offset_code (-36000/15)*/,
24368  0 /*offset_remainder (-36000%15)*/,
24369  0 /*delta_minutes*/,
24370  32767 /*until_year*/,
24371  1 /*until_month*/,
24372  1 /*until_day*/,
24373  0 /*until_time_code (0/15)*/,
24374  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24375  },
24376 
24377 };
24378 
24379 static const char kAtcZoneNameEtc_GMT_PLUS_10[] = "Etc/GMT+10";
24380 
24381 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_10 = {
24382  kAtcZoneNameEtc_GMT_PLUS_10 /*name*/,
24383  0x3f8f1cc4 /*zone_id*/,
24384  &kAtcAllZoneContext /*zone_context*/,
24385  1 /*num_eras*/,
24386  kAtcZoneEraEtc_GMT_PLUS_10 /*eras*/,
24387  NULL /*target_info*/,
24388 };
24389 
24390 //---------------------------------------------------------------------------
24391 // Zone name: Etc/GMT+11
24392 // Zone Eras: 1
24393 //---------------------------------------------------------------------------
24394 
24395 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_11[] = {
24396  // -11 - -11
24397  {
24398  NULL /*zone_policy*/,
24399  "-11" /*format*/,
24400  -2640 /*offset_code (-39600/15)*/,
24401  0 /*offset_remainder (-39600%15)*/,
24402  0 /*delta_minutes*/,
24403  32767 /*until_year*/,
24404  1 /*until_month*/,
24405  1 /*until_day*/,
24406  0 /*until_time_code (0/15)*/,
24407  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24408  },
24409 
24410 };
24411 
24412 static const char kAtcZoneNameEtc_GMT_PLUS_11[] = "Etc/GMT+11";
24413 
24414 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_11 = {
24415  kAtcZoneNameEtc_GMT_PLUS_11 /*name*/,
24416  0x3f8f1cc5 /*zone_id*/,
24417  &kAtcAllZoneContext /*zone_context*/,
24418  1 /*num_eras*/,
24419  kAtcZoneEraEtc_GMT_PLUS_11 /*eras*/,
24420  NULL /*target_info*/,
24421 };
24422 
24423 //---------------------------------------------------------------------------
24424 // Zone name: Etc/GMT+12
24425 // Zone Eras: 1
24426 //---------------------------------------------------------------------------
24427 
24428 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_12[] = {
24429  // -12 - -12
24430  {
24431  NULL /*zone_policy*/,
24432  "-12" /*format*/,
24433  -2880 /*offset_code (-43200/15)*/,
24434  0 /*offset_remainder (-43200%15)*/,
24435  0 /*delta_minutes*/,
24436  32767 /*until_year*/,
24437  1 /*until_month*/,
24438  1 /*until_day*/,
24439  0 /*until_time_code (0/15)*/,
24440  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24441  },
24442 
24443 };
24444 
24445 static const char kAtcZoneNameEtc_GMT_PLUS_12[] = "Etc/GMT+12";
24446 
24447 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_12 = {
24448  kAtcZoneNameEtc_GMT_PLUS_12 /*name*/,
24449  0x3f8f1cc6 /*zone_id*/,
24450  &kAtcAllZoneContext /*zone_context*/,
24451  1 /*num_eras*/,
24452  kAtcZoneEraEtc_GMT_PLUS_12 /*eras*/,
24453  NULL /*target_info*/,
24454 };
24455 
24456 //---------------------------------------------------------------------------
24457 // Zone name: Etc/GMT+2
24458 // Zone Eras: 1
24459 //---------------------------------------------------------------------------
24460 
24461 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_2[] = {
24462  // -2 - -02
24463  {
24464  NULL /*zone_policy*/,
24465  "-02" /*format*/,
24466  -480 /*offset_code (-7200/15)*/,
24467  0 /*offset_remainder (-7200%15)*/,
24468  0 /*delta_minutes*/,
24469  32767 /*until_year*/,
24470  1 /*until_month*/,
24471  1 /*until_day*/,
24472  0 /*until_time_code (0/15)*/,
24473  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24474  },
24475 
24476 };
24477 
24478 static const char kAtcZoneNameEtc_GMT_PLUS_2[] = "Etc/GMT+2";
24479 
24480 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_2 = {
24481  kAtcZoneNameEtc_GMT_PLUS_2 /*name*/,
24482  0x9d13da15 /*zone_id*/,
24483  &kAtcAllZoneContext /*zone_context*/,
24484  1 /*num_eras*/,
24485  kAtcZoneEraEtc_GMT_PLUS_2 /*eras*/,
24486  NULL /*target_info*/,
24487 };
24488 
24489 //---------------------------------------------------------------------------
24490 // Zone name: Etc/GMT+3
24491 // Zone Eras: 1
24492 //---------------------------------------------------------------------------
24493 
24494 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_3[] = {
24495  // -3 - -03
24496  {
24497  NULL /*zone_policy*/,
24498  "-03" /*format*/,
24499  -720 /*offset_code (-10800/15)*/,
24500  0 /*offset_remainder (-10800%15)*/,
24501  0 /*delta_minutes*/,
24502  32767 /*until_year*/,
24503  1 /*until_month*/,
24504  1 /*until_day*/,
24505  0 /*until_time_code (0/15)*/,
24506  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24507  },
24508 
24509 };
24510 
24511 static const char kAtcZoneNameEtc_GMT_PLUS_3[] = "Etc/GMT+3";
24512 
24513 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_3 = {
24514  kAtcZoneNameEtc_GMT_PLUS_3 /*name*/,
24515  0x9d13da16 /*zone_id*/,
24516  &kAtcAllZoneContext /*zone_context*/,
24517  1 /*num_eras*/,
24518  kAtcZoneEraEtc_GMT_PLUS_3 /*eras*/,
24519  NULL /*target_info*/,
24520 };
24521 
24522 //---------------------------------------------------------------------------
24523 // Zone name: Etc/GMT+4
24524 // Zone Eras: 1
24525 //---------------------------------------------------------------------------
24526 
24527 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_4[] = {
24528  // -4 - -04
24529  {
24530  NULL /*zone_policy*/,
24531  "-04" /*format*/,
24532  -960 /*offset_code (-14400/15)*/,
24533  0 /*offset_remainder (-14400%15)*/,
24534  0 /*delta_minutes*/,
24535  32767 /*until_year*/,
24536  1 /*until_month*/,
24537  1 /*until_day*/,
24538  0 /*until_time_code (0/15)*/,
24539  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24540  },
24541 
24542 };
24543 
24544 static const char kAtcZoneNameEtc_GMT_PLUS_4[] = "Etc/GMT+4";
24545 
24546 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_4 = {
24547  kAtcZoneNameEtc_GMT_PLUS_4 /*name*/,
24548  0x9d13da17 /*zone_id*/,
24549  &kAtcAllZoneContext /*zone_context*/,
24550  1 /*num_eras*/,
24551  kAtcZoneEraEtc_GMT_PLUS_4 /*eras*/,
24552  NULL /*target_info*/,
24553 };
24554 
24555 //---------------------------------------------------------------------------
24556 // Zone name: Etc/GMT+5
24557 // Zone Eras: 1
24558 //---------------------------------------------------------------------------
24559 
24560 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_5[] = {
24561  // -5 - -05
24562  {
24563  NULL /*zone_policy*/,
24564  "-05" /*format*/,
24565  -1200 /*offset_code (-18000/15)*/,
24566  0 /*offset_remainder (-18000%15)*/,
24567  0 /*delta_minutes*/,
24568  32767 /*until_year*/,
24569  1 /*until_month*/,
24570  1 /*until_day*/,
24571  0 /*until_time_code (0/15)*/,
24572  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24573  },
24574 
24575 };
24576 
24577 static const char kAtcZoneNameEtc_GMT_PLUS_5[] = "Etc/GMT+5";
24578 
24579 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_5 = {
24580  kAtcZoneNameEtc_GMT_PLUS_5 /*name*/,
24581  0x9d13da18 /*zone_id*/,
24582  &kAtcAllZoneContext /*zone_context*/,
24583  1 /*num_eras*/,
24584  kAtcZoneEraEtc_GMT_PLUS_5 /*eras*/,
24585  NULL /*target_info*/,
24586 };
24587 
24588 //---------------------------------------------------------------------------
24589 // Zone name: Etc/GMT+6
24590 // Zone Eras: 1
24591 //---------------------------------------------------------------------------
24592 
24593 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_6[] = {
24594  // -6 - -06
24595  {
24596  NULL /*zone_policy*/,
24597  "-06" /*format*/,
24598  -1440 /*offset_code (-21600/15)*/,
24599  0 /*offset_remainder (-21600%15)*/,
24600  0 /*delta_minutes*/,
24601  32767 /*until_year*/,
24602  1 /*until_month*/,
24603  1 /*until_day*/,
24604  0 /*until_time_code (0/15)*/,
24605  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24606  },
24607 
24608 };
24609 
24610 static const char kAtcZoneNameEtc_GMT_PLUS_6[] = "Etc/GMT+6";
24611 
24612 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_6 = {
24613  kAtcZoneNameEtc_GMT_PLUS_6 /*name*/,
24614  0x9d13da19 /*zone_id*/,
24615  &kAtcAllZoneContext /*zone_context*/,
24616  1 /*num_eras*/,
24617  kAtcZoneEraEtc_GMT_PLUS_6 /*eras*/,
24618  NULL /*target_info*/,
24619 };
24620 
24621 //---------------------------------------------------------------------------
24622 // Zone name: Etc/GMT+7
24623 // Zone Eras: 1
24624 //---------------------------------------------------------------------------
24625 
24626 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_7[] = {
24627  // -7 - -07
24628  {
24629  NULL /*zone_policy*/,
24630  "-07" /*format*/,
24631  -1680 /*offset_code (-25200/15)*/,
24632  0 /*offset_remainder (-25200%15)*/,
24633  0 /*delta_minutes*/,
24634  32767 /*until_year*/,
24635  1 /*until_month*/,
24636  1 /*until_day*/,
24637  0 /*until_time_code (0/15)*/,
24638  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24639  },
24640 
24641 };
24642 
24643 static const char kAtcZoneNameEtc_GMT_PLUS_7[] = "Etc/GMT+7";
24644 
24645 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_7 = {
24646  kAtcZoneNameEtc_GMT_PLUS_7 /*name*/,
24647  0x9d13da1a /*zone_id*/,
24648  &kAtcAllZoneContext /*zone_context*/,
24649  1 /*num_eras*/,
24650  kAtcZoneEraEtc_GMT_PLUS_7 /*eras*/,
24651  NULL /*target_info*/,
24652 };
24653 
24654 //---------------------------------------------------------------------------
24655 // Zone name: Etc/GMT+8
24656 // Zone Eras: 1
24657 //---------------------------------------------------------------------------
24658 
24659 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_8[] = {
24660  // -8 - -08
24661  {
24662  NULL /*zone_policy*/,
24663  "-08" /*format*/,
24664  -1920 /*offset_code (-28800/15)*/,
24665  0 /*offset_remainder (-28800%15)*/,
24666  0 /*delta_minutes*/,
24667  32767 /*until_year*/,
24668  1 /*until_month*/,
24669  1 /*until_day*/,
24670  0 /*until_time_code (0/15)*/,
24671  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24672  },
24673 
24674 };
24675 
24676 static const char kAtcZoneNameEtc_GMT_PLUS_8[] = "Etc/GMT+8";
24677 
24678 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_8 = {
24679  kAtcZoneNameEtc_GMT_PLUS_8 /*name*/,
24680  0x9d13da1b /*zone_id*/,
24681  &kAtcAllZoneContext /*zone_context*/,
24682  1 /*num_eras*/,
24683  kAtcZoneEraEtc_GMT_PLUS_8 /*eras*/,
24684  NULL /*target_info*/,
24685 };
24686 
24687 //---------------------------------------------------------------------------
24688 // Zone name: Etc/GMT+9
24689 // Zone Eras: 1
24690 //---------------------------------------------------------------------------
24691 
24692 static const AtcZoneEra kAtcZoneEraEtc_GMT_PLUS_9[] = {
24693  // -9 - -09
24694  {
24695  NULL /*zone_policy*/,
24696  "-09" /*format*/,
24697  -2160 /*offset_code (-32400/15)*/,
24698  0 /*offset_remainder (-32400%15)*/,
24699  0 /*delta_minutes*/,
24700  32767 /*until_year*/,
24701  1 /*until_month*/,
24702  1 /*until_day*/,
24703  0 /*until_time_code (0/15)*/,
24704  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24705  },
24706 
24707 };
24708 
24709 static const char kAtcZoneNameEtc_GMT_PLUS_9[] = "Etc/GMT+9";
24710 
24711 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_9 = {
24712  kAtcZoneNameEtc_GMT_PLUS_9 /*name*/,
24713  0x9d13da1c /*zone_id*/,
24714  &kAtcAllZoneContext /*zone_context*/,
24715  1 /*num_eras*/,
24716  kAtcZoneEraEtc_GMT_PLUS_9 /*eras*/,
24717  NULL /*target_info*/,
24718 };
24719 
24720 //---------------------------------------------------------------------------
24721 // Zone name: Etc/GMT-1
24722 // Zone Eras: 1
24723 //---------------------------------------------------------------------------
24724 
24725 static const AtcZoneEra kAtcZoneEraEtc_GMT_1[] = {
24726  // 1 - +01
24727  {
24728  NULL /*zone_policy*/,
24729  "+01" /*format*/,
24730  240 /*offset_code (3600/15)*/,
24731  0 /*offset_remainder (3600%15)*/,
24732  0 /*delta_minutes*/,
24733  32767 /*until_year*/,
24734  1 /*until_month*/,
24735  1 /*until_day*/,
24736  0 /*until_time_code (0/15)*/,
24737  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24738  },
24739 
24740 };
24741 
24742 static const char kAtcZoneNameEtc_GMT_1[] = "Etc/GMT-1";
24743 
24744 const AtcZoneInfo kAtcAllZoneEtc_GMT_1 = {
24745  kAtcZoneNameEtc_GMT_1 /*name*/,
24746  0x9d13da56 /*zone_id*/,
24747  &kAtcAllZoneContext /*zone_context*/,
24748  1 /*num_eras*/,
24749  kAtcZoneEraEtc_GMT_1 /*eras*/,
24750  NULL /*target_info*/,
24751 };
24752 
24753 //---------------------------------------------------------------------------
24754 // Zone name: Etc/GMT-10
24755 // Zone Eras: 1
24756 //---------------------------------------------------------------------------
24757 
24758 static const AtcZoneEra kAtcZoneEraEtc_GMT_10[] = {
24759  // 10 - +10
24760  {
24761  NULL /*zone_policy*/,
24762  "+10" /*format*/,
24763  2400 /*offset_code (36000/15)*/,
24764  0 /*offset_remainder (36000%15)*/,
24765  0 /*delta_minutes*/,
24766  32767 /*until_year*/,
24767  1 /*until_month*/,
24768  1 /*until_day*/,
24769  0 /*until_time_code (0/15)*/,
24770  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24771  },
24772 
24773 };
24774 
24775 static const char kAtcZoneNameEtc_GMT_10[] = "Etc/GMT-10";
24776 
24777 const AtcZoneInfo kAtcAllZoneEtc_GMT_10 = {
24778  kAtcZoneNameEtc_GMT_10 /*name*/,
24779  0x3f8f2546 /*zone_id*/,
24780  &kAtcAllZoneContext /*zone_context*/,
24781  1 /*num_eras*/,
24782  kAtcZoneEraEtc_GMT_10 /*eras*/,
24783  NULL /*target_info*/,
24784 };
24785 
24786 //---------------------------------------------------------------------------
24787 // Zone name: Etc/GMT-11
24788 // Zone Eras: 1
24789 //---------------------------------------------------------------------------
24790 
24791 static const AtcZoneEra kAtcZoneEraEtc_GMT_11[] = {
24792  // 11 - +11
24793  {
24794  NULL /*zone_policy*/,
24795  "+11" /*format*/,
24796  2640 /*offset_code (39600/15)*/,
24797  0 /*offset_remainder (39600%15)*/,
24798  0 /*delta_minutes*/,
24799  32767 /*until_year*/,
24800  1 /*until_month*/,
24801  1 /*until_day*/,
24802  0 /*until_time_code (0/15)*/,
24803  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24804  },
24805 
24806 };
24807 
24808 static const char kAtcZoneNameEtc_GMT_11[] = "Etc/GMT-11";
24809 
24810 const AtcZoneInfo kAtcAllZoneEtc_GMT_11 = {
24811  kAtcZoneNameEtc_GMT_11 /*name*/,
24812  0x3f8f2547 /*zone_id*/,
24813  &kAtcAllZoneContext /*zone_context*/,
24814  1 /*num_eras*/,
24815  kAtcZoneEraEtc_GMT_11 /*eras*/,
24816  NULL /*target_info*/,
24817 };
24818 
24819 //---------------------------------------------------------------------------
24820 // Zone name: Etc/GMT-12
24821 // Zone Eras: 1
24822 //---------------------------------------------------------------------------
24823 
24824 static const AtcZoneEra kAtcZoneEraEtc_GMT_12[] = {
24825  // 12 - +12
24826  {
24827  NULL /*zone_policy*/,
24828  "+12" /*format*/,
24829  2880 /*offset_code (43200/15)*/,
24830  0 /*offset_remainder (43200%15)*/,
24831  0 /*delta_minutes*/,
24832  32767 /*until_year*/,
24833  1 /*until_month*/,
24834  1 /*until_day*/,
24835  0 /*until_time_code (0/15)*/,
24836  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24837  },
24838 
24839 };
24840 
24841 static const char kAtcZoneNameEtc_GMT_12[] = "Etc/GMT-12";
24842 
24843 const AtcZoneInfo kAtcAllZoneEtc_GMT_12 = {
24844  kAtcZoneNameEtc_GMT_12 /*name*/,
24845  0x3f8f2548 /*zone_id*/,
24846  &kAtcAllZoneContext /*zone_context*/,
24847  1 /*num_eras*/,
24848  kAtcZoneEraEtc_GMT_12 /*eras*/,
24849  NULL /*target_info*/,
24850 };
24851 
24852 //---------------------------------------------------------------------------
24853 // Zone name: Etc/GMT-13
24854 // Zone Eras: 1
24855 //---------------------------------------------------------------------------
24856 
24857 static const AtcZoneEra kAtcZoneEraEtc_GMT_13[] = {
24858  // 13 - +13
24859  {
24860  NULL /*zone_policy*/,
24861  "+13" /*format*/,
24862  3120 /*offset_code (46800/15)*/,
24863  0 /*offset_remainder (46800%15)*/,
24864  0 /*delta_minutes*/,
24865  32767 /*until_year*/,
24866  1 /*until_month*/,
24867  1 /*until_day*/,
24868  0 /*until_time_code (0/15)*/,
24869  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24870  },
24871 
24872 };
24873 
24874 static const char kAtcZoneNameEtc_GMT_13[] = "Etc/GMT-13";
24875 
24876 const AtcZoneInfo kAtcAllZoneEtc_GMT_13 = {
24877  kAtcZoneNameEtc_GMT_13 /*name*/,
24878  0x3f8f2549 /*zone_id*/,
24879  &kAtcAllZoneContext /*zone_context*/,
24880  1 /*num_eras*/,
24881  kAtcZoneEraEtc_GMT_13 /*eras*/,
24882  NULL /*target_info*/,
24883 };
24884 
24885 //---------------------------------------------------------------------------
24886 // Zone name: Etc/GMT-14
24887 // Zone Eras: 1
24888 //---------------------------------------------------------------------------
24889 
24890 static const AtcZoneEra kAtcZoneEraEtc_GMT_14[] = {
24891  // 14 - +14
24892  {
24893  NULL /*zone_policy*/,
24894  "+14" /*format*/,
24895  3360 /*offset_code (50400/15)*/,
24896  0 /*offset_remainder (50400%15)*/,
24897  0 /*delta_minutes*/,
24898  32767 /*until_year*/,
24899  1 /*until_month*/,
24900  1 /*until_day*/,
24901  0 /*until_time_code (0/15)*/,
24902  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24903  },
24904 
24905 };
24906 
24907 static const char kAtcZoneNameEtc_GMT_14[] = "Etc/GMT-14";
24908 
24909 const AtcZoneInfo kAtcAllZoneEtc_GMT_14 = {
24910  kAtcZoneNameEtc_GMT_14 /*name*/,
24911  0x3f8f254a /*zone_id*/,
24912  &kAtcAllZoneContext /*zone_context*/,
24913  1 /*num_eras*/,
24914  kAtcZoneEraEtc_GMT_14 /*eras*/,
24915  NULL /*target_info*/,
24916 };
24917 
24918 //---------------------------------------------------------------------------
24919 // Zone name: Etc/GMT-2
24920 // Zone Eras: 1
24921 //---------------------------------------------------------------------------
24922 
24923 static const AtcZoneEra kAtcZoneEraEtc_GMT_2[] = {
24924  // 2 - +02
24925  {
24926  NULL /*zone_policy*/,
24927  "+02" /*format*/,
24928  480 /*offset_code (7200/15)*/,
24929  0 /*offset_remainder (7200%15)*/,
24930  0 /*delta_minutes*/,
24931  32767 /*until_year*/,
24932  1 /*until_month*/,
24933  1 /*until_day*/,
24934  0 /*until_time_code (0/15)*/,
24935  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24936  },
24937 
24938 };
24939 
24940 static const char kAtcZoneNameEtc_GMT_2[] = "Etc/GMT-2";
24941 
24942 const AtcZoneInfo kAtcAllZoneEtc_GMT_2 = {
24943  kAtcZoneNameEtc_GMT_2 /*name*/,
24944  0x9d13da57 /*zone_id*/,
24945  &kAtcAllZoneContext /*zone_context*/,
24946  1 /*num_eras*/,
24947  kAtcZoneEraEtc_GMT_2 /*eras*/,
24948  NULL /*target_info*/,
24949 };
24950 
24951 //---------------------------------------------------------------------------
24952 // Zone name: Etc/GMT-3
24953 // Zone Eras: 1
24954 //---------------------------------------------------------------------------
24955 
24956 static const AtcZoneEra kAtcZoneEraEtc_GMT_3[] = {
24957  // 3 - +03
24958  {
24959  NULL /*zone_policy*/,
24960  "+03" /*format*/,
24961  720 /*offset_code (10800/15)*/,
24962  0 /*offset_remainder (10800%15)*/,
24963  0 /*delta_minutes*/,
24964  32767 /*until_year*/,
24965  1 /*until_month*/,
24966  1 /*until_day*/,
24967  0 /*until_time_code (0/15)*/,
24968  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
24969  },
24970 
24971 };
24972 
24973 static const char kAtcZoneNameEtc_GMT_3[] = "Etc/GMT-3";
24974 
24975 const AtcZoneInfo kAtcAllZoneEtc_GMT_3 = {
24976  kAtcZoneNameEtc_GMT_3 /*name*/,
24977  0x9d13da58 /*zone_id*/,
24978  &kAtcAllZoneContext /*zone_context*/,
24979  1 /*num_eras*/,
24980  kAtcZoneEraEtc_GMT_3 /*eras*/,
24981  NULL /*target_info*/,
24982 };
24983 
24984 //---------------------------------------------------------------------------
24985 // Zone name: Etc/GMT-4
24986 // Zone Eras: 1
24987 //---------------------------------------------------------------------------
24988 
24989 static const AtcZoneEra kAtcZoneEraEtc_GMT_4[] = {
24990  // 4 - +04
24991  {
24992  NULL /*zone_policy*/,
24993  "+04" /*format*/,
24994  960 /*offset_code (14400/15)*/,
24995  0 /*offset_remainder (14400%15)*/,
24996  0 /*delta_minutes*/,
24997  32767 /*until_year*/,
24998  1 /*until_month*/,
24999  1 /*until_day*/,
25000  0 /*until_time_code (0/15)*/,
25001  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25002  },
25003 
25004 };
25005 
25006 static const char kAtcZoneNameEtc_GMT_4[] = "Etc/GMT-4";
25007 
25008 const AtcZoneInfo kAtcAllZoneEtc_GMT_4 = {
25009  kAtcZoneNameEtc_GMT_4 /*name*/,
25010  0x9d13da59 /*zone_id*/,
25011  &kAtcAllZoneContext /*zone_context*/,
25012  1 /*num_eras*/,
25013  kAtcZoneEraEtc_GMT_4 /*eras*/,
25014  NULL /*target_info*/,
25015 };
25016 
25017 //---------------------------------------------------------------------------
25018 // Zone name: Etc/GMT-5
25019 // Zone Eras: 1
25020 //---------------------------------------------------------------------------
25021 
25022 static const AtcZoneEra kAtcZoneEraEtc_GMT_5[] = {
25023  // 5 - +05
25024  {
25025  NULL /*zone_policy*/,
25026  "+05" /*format*/,
25027  1200 /*offset_code (18000/15)*/,
25028  0 /*offset_remainder (18000%15)*/,
25029  0 /*delta_minutes*/,
25030  32767 /*until_year*/,
25031  1 /*until_month*/,
25032  1 /*until_day*/,
25033  0 /*until_time_code (0/15)*/,
25034  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25035  },
25036 
25037 };
25038 
25039 static const char kAtcZoneNameEtc_GMT_5[] = "Etc/GMT-5";
25040 
25041 const AtcZoneInfo kAtcAllZoneEtc_GMT_5 = {
25042  kAtcZoneNameEtc_GMT_5 /*name*/,
25043  0x9d13da5a /*zone_id*/,
25044  &kAtcAllZoneContext /*zone_context*/,
25045  1 /*num_eras*/,
25046  kAtcZoneEraEtc_GMT_5 /*eras*/,
25047  NULL /*target_info*/,
25048 };
25049 
25050 //---------------------------------------------------------------------------
25051 // Zone name: Etc/GMT-6
25052 // Zone Eras: 1
25053 //---------------------------------------------------------------------------
25054 
25055 static const AtcZoneEra kAtcZoneEraEtc_GMT_6[] = {
25056  // 6 - +06
25057  {
25058  NULL /*zone_policy*/,
25059  "+06" /*format*/,
25060  1440 /*offset_code (21600/15)*/,
25061  0 /*offset_remainder (21600%15)*/,
25062  0 /*delta_minutes*/,
25063  32767 /*until_year*/,
25064  1 /*until_month*/,
25065  1 /*until_day*/,
25066  0 /*until_time_code (0/15)*/,
25067  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25068  },
25069 
25070 };
25071 
25072 static const char kAtcZoneNameEtc_GMT_6[] = "Etc/GMT-6";
25073 
25074 const AtcZoneInfo kAtcAllZoneEtc_GMT_6 = {
25075  kAtcZoneNameEtc_GMT_6 /*name*/,
25076  0x9d13da5b /*zone_id*/,
25077  &kAtcAllZoneContext /*zone_context*/,
25078  1 /*num_eras*/,
25079  kAtcZoneEraEtc_GMT_6 /*eras*/,
25080  NULL /*target_info*/,
25081 };
25082 
25083 //---------------------------------------------------------------------------
25084 // Zone name: Etc/GMT-7
25085 // Zone Eras: 1
25086 //---------------------------------------------------------------------------
25087 
25088 static const AtcZoneEra kAtcZoneEraEtc_GMT_7[] = {
25089  // 7 - +07
25090  {
25091  NULL /*zone_policy*/,
25092  "+07" /*format*/,
25093  1680 /*offset_code (25200/15)*/,
25094  0 /*offset_remainder (25200%15)*/,
25095  0 /*delta_minutes*/,
25096  32767 /*until_year*/,
25097  1 /*until_month*/,
25098  1 /*until_day*/,
25099  0 /*until_time_code (0/15)*/,
25100  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25101  },
25102 
25103 };
25104 
25105 static const char kAtcZoneNameEtc_GMT_7[] = "Etc/GMT-7";
25106 
25107 const AtcZoneInfo kAtcAllZoneEtc_GMT_7 = {
25108  kAtcZoneNameEtc_GMT_7 /*name*/,
25109  0x9d13da5c /*zone_id*/,
25110  &kAtcAllZoneContext /*zone_context*/,
25111  1 /*num_eras*/,
25112  kAtcZoneEraEtc_GMT_7 /*eras*/,
25113  NULL /*target_info*/,
25114 };
25115 
25116 //---------------------------------------------------------------------------
25117 // Zone name: Etc/GMT-8
25118 // Zone Eras: 1
25119 //---------------------------------------------------------------------------
25120 
25121 static const AtcZoneEra kAtcZoneEraEtc_GMT_8[] = {
25122  // 8 - +08
25123  {
25124  NULL /*zone_policy*/,
25125  "+08" /*format*/,
25126  1920 /*offset_code (28800/15)*/,
25127  0 /*offset_remainder (28800%15)*/,
25128  0 /*delta_minutes*/,
25129  32767 /*until_year*/,
25130  1 /*until_month*/,
25131  1 /*until_day*/,
25132  0 /*until_time_code (0/15)*/,
25133  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25134  },
25135 
25136 };
25137 
25138 static const char kAtcZoneNameEtc_GMT_8[] = "Etc/GMT-8";
25139 
25140 const AtcZoneInfo kAtcAllZoneEtc_GMT_8 = {
25141  kAtcZoneNameEtc_GMT_8 /*name*/,
25142  0x9d13da5d /*zone_id*/,
25143  &kAtcAllZoneContext /*zone_context*/,
25144  1 /*num_eras*/,
25145  kAtcZoneEraEtc_GMT_8 /*eras*/,
25146  NULL /*target_info*/,
25147 };
25148 
25149 //---------------------------------------------------------------------------
25150 // Zone name: Etc/GMT-9
25151 // Zone Eras: 1
25152 //---------------------------------------------------------------------------
25153 
25154 static const AtcZoneEra kAtcZoneEraEtc_GMT_9[] = {
25155  // 9 - +09
25156  {
25157  NULL /*zone_policy*/,
25158  "+09" /*format*/,
25159  2160 /*offset_code (32400/15)*/,
25160  0 /*offset_remainder (32400%15)*/,
25161  0 /*delta_minutes*/,
25162  32767 /*until_year*/,
25163  1 /*until_month*/,
25164  1 /*until_day*/,
25165  0 /*until_time_code (0/15)*/,
25166  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25167  },
25168 
25169 };
25170 
25171 static const char kAtcZoneNameEtc_GMT_9[] = "Etc/GMT-9";
25172 
25173 const AtcZoneInfo kAtcAllZoneEtc_GMT_9 = {
25174  kAtcZoneNameEtc_GMT_9 /*name*/,
25175  0x9d13da5e /*zone_id*/,
25176  &kAtcAllZoneContext /*zone_context*/,
25177  1 /*num_eras*/,
25178  kAtcZoneEraEtc_GMT_9 /*eras*/,
25179  NULL /*target_info*/,
25180 };
25181 
25182 //---------------------------------------------------------------------------
25183 // Zone name: Etc/UTC
25184 // Zone Eras: 1
25185 //---------------------------------------------------------------------------
25186 
25187 static const AtcZoneEra kAtcZoneEraEtc_UTC[] = {
25188  // 0 - UTC
25189  {
25190  NULL /*zone_policy*/,
25191  "UTC" /*format*/,
25192  0 /*offset_code (0/15)*/,
25193  0 /*offset_remainder (0%15)*/,
25194  0 /*delta_minutes*/,
25195  32767 /*until_year*/,
25196  1 /*until_month*/,
25197  1 /*until_day*/,
25198  0 /*until_time_code (0/15)*/,
25199  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25200  },
25201 
25202 };
25203 
25204 static const char kAtcZoneNameEtc_UTC[] = "Etc/UTC";
25205 
25206 const AtcZoneInfo kAtcAllZoneEtc_UTC = {
25207  kAtcZoneNameEtc_UTC /*name*/,
25208  0xd8e31abc /*zone_id*/,
25209  &kAtcAllZoneContext /*zone_context*/,
25210  1 /*num_eras*/,
25211  kAtcZoneEraEtc_UTC /*eras*/,
25212  NULL /*target_info*/,
25213 };
25214 
25215 //---------------------------------------------------------------------------
25216 // Zone name: Europe/Andorra
25217 // Zone Eras: 4
25218 //---------------------------------------------------------------------------
25219 
25220 static const AtcZoneEra kAtcZoneEraEurope_Andorra[] = {
25221  // 0:06:04 - LMT 1901
25222  {
25223  NULL /*zone_policy*/,
25224  "LMT" /*format*/,
25225  24 /*offset_code (364/15)*/,
25226  4 /*offset_remainder (364%15)*/,
25227  0 /*delta_minutes*/,
25228  1901 /*until_year*/,
25229  1 /*until_month*/,
25230  1 /*until_day*/,
25231  0 /*until_time_code (0/15)*/,
25232  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25233  },
25234  // 0:00 - WET 1946 Sep 30
25235  {
25236  NULL /*zone_policy*/,
25237  "WET" /*format*/,
25238  0 /*offset_code (0/15)*/,
25239  0 /*offset_remainder (0%15)*/,
25240  0 /*delta_minutes*/,
25241  1946 /*until_year*/,
25242  9 /*until_month*/,
25243  30 /*until_day*/,
25244  0 /*until_time_code (0/15)*/,
25245  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25246  },
25247  // 1:00 - CET 1985 Mar 31 2:00
25248  {
25249  NULL /*zone_policy*/,
25250  "CET" /*format*/,
25251  240 /*offset_code (3600/15)*/,
25252  0 /*offset_remainder (3600%15)*/,
25253  0 /*delta_minutes*/,
25254  1985 /*until_year*/,
25255  3 /*until_month*/,
25256  31 /*until_day*/,
25257  480 /*until_time_code (7200/15)*/,
25258  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25259  },
25260  // 1:00 EU CE%sT
25261  {
25262  &kAtcAllZonePolicyEU /*zone_policy*/,
25263  "CE%T" /*format*/,
25264  240 /*offset_code (3600/15)*/,
25265  0 /*offset_remainder (3600%15)*/,
25266  0 /*delta_minutes*/,
25267  32767 /*until_year*/,
25268  1 /*until_month*/,
25269  1 /*until_day*/,
25270  0 /*until_time_code (0/15)*/,
25271  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25272  },
25273 
25274 };
25275 
25276 static const char kAtcZoneNameEurope_Andorra[] = "Europe/Andorra";
25277 
25278 const AtcZoneInfo kAtcAllZoneEurope_Andorra = {
25279  kAtcZoneNameEurope_Andorra /*name*/,
25280  0x97f6764b /*zone_id*/,
25281  &kAtcAllZoneContext /*zone_context*/,
25282  4 /*num_eras*/,
25283  kAtcZoneEraEurope_Andorra /*eras*/,
25284  NULL /*target_info*/,
25285 };
25286 
25287 //---------------------------------------------------------------------------
25288 // Zone name: Europe/Astrakhan
25289 // Zone Eras: 9
25290 //---------------------------------------------------------------------------
25291 
25292 static const AtcZoneEra kAtcZoneEraEurope_Astrakhan[] = {
25293  // 3:12:12 - LMT 1924 May
25294  {
25295  NULL /*zone_policy*/,
25296  "LMT" /*format*/,
25297  768 /*offset_code (11532/15)*/,
25298  12 /*offset_remainder (11532%15)*/,
25299  0 /*delta_minutes*/,
25300  1924 /*until_year*/,
25301  5 /*until_month*/,
25302  1 /*until_day*/,
25303  0 /*until_time_code (0/15)*/,
25304  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25305  },
25306  // 3:00 - +03 1930 Jun 21
25307  {
25308  NULL /*zone_policy*/,
25309  "+03" /*format*/,
25310  720 /*offset_code (10800/15)*/,
25311  0 /*offset_remainder (10800%15)*/,
25312  0 /*delta_minutes*/,
25313  1930 /*until_year*/,
25314  6 /*until_month*/,
25315  21 /*until_day*/,
25316  0 /*until_time_code (0/15)*/,
25317  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25318  },
25319  // 4:00 Russia +04/+05 1989 Mar 26 2:00s
25320  {
25321  &kAtcAllZonePolicyRussia /*zone_policy*/,
25322  "+04/+05" /*format*/,
25323  960 /*offset_code (14400/15)*/,
25324  0 /*offset_remainder (14400%15)*/,
25325  0 /*delta_minutes*/,
25326  1989 /*until_year*/,
25327  3 /*until_month*/,
25328  26 /*until_day*/,
25329  480 /*until_time_code (7200/15)*/,
25330  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25331  },
25332  // 3:00 Russia +03/+04 1991 Mar 31 2:00s
25333  {
25334  &kAtcAllZonePolicyRussia /*zone_policy*/,
25335  "+03/+04" /*format*/,
25336  720 /*offset_code (10800/15)*/,
25337  0 /*offset_remainder (10800%15)*/,
25338  0 /*delta_minutes*/,
25339  1991 /*until_year*/,
25340  3 /*until_month*/,
25341  31 /*until_day*/,
25342  480 /*until_time_code (7200/15)*/,
25343  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25344  },
25345  // 4:00 - +04 1992 Mar 29 2:00s
25346  {
25347  NULL /*zone_policy*/,
25348  "+04" /*format*/,
25349  960 /*offset_code (14400/15)*/,
25350  0 /*offset_remainder (14400%15)*/,
25351  0 /*delta_minutes*/,
25352  1992 /*until_year*/,
25353  3 /*until_month*/,
25354  29 /*until_day*/,
25355  480 /*until_time_code (7200/15)*/,
25356  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25357  },
25358  // 3:00 Russia +03/+04 2011 Mar 27 2:00s
25359  {
25360  &kAtcAllZonePolicyRussia /*zone_policy*/,
25361  "+03/+04" /*format*/,
25362  720 /*offset_code (10800/15)*/,
25363  0 /*offset_remainder (10800%15)*/,
25364  0 /*delta_minutes*/,
25365  2011 /*until_year*/,
25366  3 /*until_month*/,
25367  27 /*until_day*/,
25368  480 /*until_time_code (7200/15)*/,
25369  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25370  },
25371  // 4:00 - +04 2014 Oct 26 2:00s
25372  {
25373  NULL /*zone_policy*/,
25374  "+04" /*format*/,
25375  960 /*offset_code (14400/15)*/,
25376  0 /*offset_remainder (14400%15)*/,
25377  0 /*delta_minutes*/,
25378  2014 /*until_year*/,
25379  10 /*until_month*/,
25380  26 /*until_day*/,
25381  480 /*until_time_code (7200/15)*/,
25382  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25383  },
25384  // 3:00 - +03 2016 Mar 27 2:00s
25385  {
25386  NULL /*zone_policy*/,
25387  "+03" /*format*/,
25388  720 /*offset_code (10800/15)*/,
25389  0 /*offset_remainder (10800%15)*/,
25390  0 /*delta_minutes*/,
25391  2016 /*until_year*/,
25392  3 /*until_month*/,
25393  27 /*until_day*/,
25394  480 /*until_time_code (7200/15)*/,
25395  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25396  },
25397  // 4:00 - +04
25398  {
25399  NULL /*zone_policy*/,
25400  "+04" /*format*/,
25401  960 /*offset_code (14400/15)*/,
25402  0 /*offset_remainder (14400%15)*/,
25403  0 /*delta_minutes*/,
25404  32767 /*until_year*/,
25405  1 /*until_month*/,
25406  1 /*until_day*/,
25407  0 /*until_time_code (0/15)*/,
25408  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25409  },
25410 
25411 };
25412 
25413 static const char kAtcZoneNameEurope_Astrakhan[] = "Europe/Astrakhan";
25414 
25415 const AtcZoneInfo kAtcAllZoneEurope_Astrakhan = {
25416  kAtcZoneNameEurope_Astrakhan /*name*/,
25417  0xe22256e1 /*zone_id*/,
25418  &kAtcAllZoneContext /*zone_context*/,
25419  9 /*num_eras*/,
25420  kAtcZoneEraEurope_Astrakhan /*eras*/,
25421  NULL /*target_info*/,
25422 };
25423 
25424 //---------------------------------------------------------------------------
25425 // Zone name: Europe/Athens
25426 // Zone Eras: 6
25427 //---------------------------------------------------------------------------
25428 
25429 static const AtcZoneEra kAtcZoneEraEurope_Athens[] = {
25430  // 1:34:52 - LMT 1895 Sep 14
25431  {
25432  NULL /*zone_policy*/,
25433  "LMT" /*format*/,
25434  379 /*offset_code (5692/15)*/,
25435  7 /*offset_remainder (5692%15)*/,
25436  0 /*delta_minutes*/,
25437  1895 /*until_year*/,
25438  9 /*until_month*/,
25439  14 /*until_day*/,
25440  0 /*until_time_code (0/15)*/,
25441  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25442  },
25443  // 1:34:52 - AMT 1916 Jul 28 0:01
25444  {
25445  NULL /*zone_policy*/,
25446  "AMT" /*format*/,
25447  379 /*offset_code (5692/15)*/,
25448  7 /*offset_remainder (5692%15)*/,
25449  0 /*delta_minutes*/,
25450  1916 /*until_year*/,
25451  7 /*until_month*/,
25452  28 /*until_day*/,
25453  4 /*until_time_code (60/15)*/,
25454  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25455  },
25456  // 2:00 Greece EE%sT 1941 Apr 30
25457  {
25458  &kAtcAllZonePolicyGreece /*zone_policy*/,
25459  "EE%T" /*format*/,
25460  480 /*offset_code (7200/15)*/,
25461  0 /*offset_remainder (7200%15)*/,
25462  0 /*delta_minutes*/,
25463  1941 /*until_year*/,
25464  4 /*until_month*/,
25465  30 /*until_day*/,
25466  0 /*until_time_code (0/15)*/,
25467  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25468  },
25469  // 1:00 Greece CE%sT 1944 Apr 4
25470  {
25471  &kAtcAllZonePolicyGreece /*zone_policy*/,
25472  "CE%T" /*format*/,
25473  240 /*offset_code (3600/15)*/,
25474  0 /*offset_remainder (3600%15)*/,
25475  0 /*delta_minutes*/,
25476  1944 /*until_year*/,
25477  4 /*until_month*/,
25478  4 /*until_day*/,
25479  0 /*until_time_code (0/15)*/,
25480  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25481  },
25482  // 2:00 Greece EE%sT 1981
25483  {
25484  &kAtcAllZonePolicyGreece /*zone_policy*/,
25485  "EE%T" /*format*/,
25486  480 /*offset_code (7200/15)*/,
25487  0 /*offset_remainder (7200%15)*/,
25488  0 /*delta_minutes*/,
25489  1981 /*until_year*/,
25490  1 /*until_month*/,
25491  1 /*until_day*/,
25492  0 /*until_time_code (0/15)*/,
25493  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25494  },
25495  // 2:00 EU EE%sT
25496  {
25497  &kAtcAllZonePolicyEU /*zone_policy*/,
25498  "EE%T" /*format*/,
25499  480 /*offset_code (7200/15)*/,
25500  0 /*offset_remainder (7200%15)*/,
25501  0 /*delta_minutes*/,
25502  32767 /*until_year*/,
25503  1 /*until_month*/,
25504  1 /*until_day*/,
25505  0 /*until_time_code (0/15)*/,
25506  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25507  },
25508 
25509 };
25510 
25511 static const char kAtcZoneNameEurope_Athens[] = "Europe/Athens";
25512 
25513 const AtcZoneInfo kAtcAllZoneEurope_Athens = {
25514  kAtcZoneNameEurope_Athens /*name*/,
25515  0x4318fa27 /*zone_id*/,
25516  &kAtcAllZoneContext /*zone_context*/,
25517  6 /*num_eras*/,
25518  kAtcZoneEraEurope_Athens /*eras*/,
25519  NULL /*target_info*/,
25520 };
25521 
25522 //---------------------------------------------------------------------------
25523 // Zone name: Europe/Belgrade
25524 // Zone Eras: 7
25525 //---------------------------------------------------------------------------
25526 
25527 static const AtcZoneEra kAtcZoneEraEurope_Belgrade[] = {
25528  // 1:22:00 - LMT 1884
25529  {
25530  NULL /*zone_policy*/,
25531  "LMT" /*format*/,
25532  328 /*offset_code (4920/15)*/,
25533  0 /*offset_remainder (4920%15)*/,
25534  0 /*delta_minutes*/,
25535  1884 /*until_year*/,
25536  1 /*until_month*/,
25537  1 /*until_day*/,
25538  0 /*until_time_code (0/15)*/,
25539  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25540  },
25541  // 1:00 - CET 1941 Apr 18 23:00
25542  {
25543  NULL /*zone_policy*/,
25544  "CET" /*format*/,
25545  240 /*offset_code (3600/15)*/,
25546  0 /*offset_remainder (3600%15)*/,
25547  0 /*delta_minutes*/,
25548  1941 /*until_year*/,
25549  4 /*until_month*/,
25550  18 /*until_day*/,
25551  5520 /*until_time_code (82800/15)*/,
25552  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25553  },
25554  // 1:00 C-Eur CE%sT 1945
25555  {
25556  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
25557  "CE%T" /*format*/,
25558  240 /*offset_code (3600/15)*/,
25559  0 /*offset_remainder (3600%15)*/,
25560  0 /*delta_minutes*/,
25561  1945 /*until_year*/,
25562  1 /*until_month*/,
25563  1 /*until_day*/,
25564  0 /*until_time_code (0/15)*/,
25565  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25566  },
25567  // 1:00 - CET 1945 May 8 2:00s
25568  {
25569  NULL /*zone_policy*/,
25570  "CET" /*format*/,
25571  240 /*offset_code (3600/15)*/,
25572  0 /*offset_remainder (3600%15)*/,
25573  0 /*delta_minutes*/,
25574  1945 /*until_year*/,
25575  5 /*until_month*/,
25576  8 /*until_day*/,
25577  480 /*until_time_code (7200/15)*/,
25578  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25579  },
25580  // 1:00 1:00 CEST 1945 Sep 16 2:00s
25581  {
25582  NULL /*zone_policy*/,
25583  "CEST" /*format*/,
25584  240 /*offset_code (3600/15)*/,
25585  0 /*offset_remainder (3600%15)*/,
25586  60 /*delta_minutes*/,
25587  1945 /*until_year*/,
25588  9 /*until_month*/,
25589  16 /*until_day*/,
25590  480 /*until_time_code (7200/15)*/,
25591  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25592  },
25593  // 1:00 - CET 1982 Nov 27
25594  {
25595  NULL /*zone_policy*/,
25596  "CET" /*format*/,
25597  240 /*offset_code (3600/15)*/,
25598  0 /*offset_remainder (3600%15)*/,
25599  0 /*delta_minutes*/,
25600  1982 /*until_year*/,
25601  11 /*until_month*/,
25602  27 /*until_day*/,
25603  0 /*until_time_code (0/15)*/,
25604  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25605  },
25606  // 1:00 EU CE%sT
25607  {
25608  &kAtcAllZonePolicyEU /*zone_policy*/,
25609  "CE%T" /*format*/,
25610  240 /*offset_code (3600/15)*/,
25611  0 /*offset_remainder (3600%15)*/,
25612  0 /*delta_minutes*/,
25613  32767 /*until_year*/,
25614  1 /*until_month*/,
25615  1 /*until_day*/,
25616  0 /*until_time_code (0/15)*/,
25617  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25618  },
25619 
25620 };
25621 
25622 static const char kAtcZoneNameEurope_Belgrade[] = "Europe/Belgrade";
25623 
25624 const AtcZoneInfo kAtcAllZoneEurope_Belgrade = {
25625  kAtcZoneNameEurope_Belgrade /*name*/,
25626  0xe0532b3a /*zone_id*/,
25627  &kAtcAllZoneContext /*zone_context*/,
25628  7 /*num_eras*/,
25629  kAtcZoneEraEurope_Belgrade /*eras*/,
25630  NULL /*target_info*/,
25631 };
25632 
25633 //---------------------------------------------------------------------------
25634 // Zone name: Europe/Berlin
25635 // Zone Eras: 5
25636 //---------------------------------------------------------------------------
25637 
25638 static const AtcZoneEra kAtcZoneEraEurope_Berlin[] = {
25639  // 0:53:28 - LMT 1893 Apr
25640  {
25641  NULL /*zone_policy*/,
25642  "LMT" /*format*/,
25643  213 /*offset_code (3208/15)*/,
25644  13 /*offset_remainder (3208%15)*/,
25645  0 /*delta_minutes*/,
25646  1893 /*until_year*/,
25647  4 /*until_month*/,
25648  1 /*until_day*/,
25649  0 /*until_time_code (0/15)*/,
25650  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25651  },
25652  // 1:00 C-Eur CE%sT 1945 May 24 2:00
25653  {
25654  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
25655  "CE%T" /*format*/,
25656  240 /*offset_code (3600/15)*/,
25657  0 /*offset_remainder (3600%15)*/,
25658  0 /*delta_minutes*/,
25659  1945 /*until_year*/,
25660  5 /*until_month*/,
25661  24 /*until_day*/,
25662  480 /*until_time_code (7200/15)*/,
25663  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25664  },
25665  // 1:00 SovietZone CE%sT 1946
25666  {
25667  &kAtcAllZonePolicySovietZone /*zone_policy*/,
25668  "CE%T" /*format*/,
25669  240 /*offset_code (3600/15)*/,
25670  0 /*offset_remainder (3600%15)*/,
25671  0 /*delta_minutes*/,
25672  1946 /*until_year*/,
25673  1 /*until_month*/,
25674  1 /*until_day*/,
25675  0 /*until_time_code (0/15)*/,
25676  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25677  },
25678  // 1:00 Germany CE%sT 1980
25679  {
25680  &kAtcAllZonePolicyGermany /*zone_policy*/,
25681  "CE%T" /*format*/,
25682  240 /*offset_code (3600/15)*/,
25683  0 /*offset_remainder (3600%15)*/,
25684  0 /*delta_minutes*/,
25685  1980 /*until_year*/,
25686  1 /*until_month*/,
25687  1 /*until_day*/,
25688  0 /*until_time_code (0/15)*/,
25689  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25690  },
25691  // 1:00 EU CE%sT
25692  {
25693  &kAtcAllZonePolicyEU /*zone_policy*/,
25694  "CE%T" /*format*/,
25695  240 /*offset_code (3600/15)*/,
25696  0 /*offset_remainder (3600%15)*/,
25697  0 /*delta_minutes*/,
25698  32767 /*until_year*/,
25699  1 /*until_month*/,
25700  1 /*until_day*/,
25701  0 /*until_time_code (0/15)*/,
25702  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25703  },
25704 
25705 };
25706 
25707 static const char kAtcZoneNameEurope_Berlin[] = "Europe/Berlin";
25708 
25709 const AtcZoneInfo kAtcAllZoneEurope_Berlin = {
25710  kAtcZoneNameEurope_Berlin /*name*/,
25711  0x44644c20 /*zone_id*/,
25712  &kAtcAllZoneContext /*zone_context*/,
25713  5 /*num_eras*/,
25714  kAtcZoneEraEurope_Berlin /*eras*/,
25715  NULL /*target_info*/,
25716 };
25717 
25718 //---------------------------------------------------------------------------
25719 // Zone name: Europe/Brussels
25720 // Zone Eras: 9
25721 //---------------------------------------------------------------------------
25722 
25723 static const AtcZoneEra kAtcZoneEraEurope_Brussels[] = {
25724  // 0:17:30 - LMT 1880
25725  {
25726  NULL /*zone_policy*/,
25727  "LMT" /*format*/,
25728  70 /*offset_code (1050/15)*/,
25729  0 /*offset_remainder (1050%15)*/,
25730  0 /*delta_minutes*/,
25731  1880 /*until_year*/,
25732  1 /*until_month*/,
25733  1 /*until_day*/,
25734  0 /*until_time_code (0/15)*/,
25735  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25736  },
25737  // 0:17:30 - BMT 1892 May 1 00:17:30
25738  {
25739  NULL /*zone_policy*/,
25740  "BMT" /*format*/,
25741  70 /*offset_code (1050/15)*/,
25742  0 /*offset_remainder (1050%15)*/,
25743  0 /*delta_minutes*/,
25744  1892 /*until_year*/,
25745  5 /*until_month*/,
25746  1 /*until_day*/,
25747  70 /*until_time_code (1050/15)*/,
25748  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25749  },
25750  // 0:00 - WET 1914 Nov 8
25751  {
25752  NULL /*zone_policy*/,
25753  "WET" /*format*/,
25754  0 /*offset_code (0/15)*/,
25755  0 /*offset_remainder (0%15)*/,
25756  0 /*delta_minutes*/,
25757  1914 /*until_year*/,
25758  11 /*until_month*/,
25759  8 /*until_day*/,
25760  0 /*until_time_code (0/15)*/,
25761  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25762  },
25763  // 1:00 - CET 1916 May 1 0:00
25764  {
25765  NULL /*zone_policy*/,
25766  "CET" /*format*/,
25767  240 /*offset_code (3600/15)*/,
25768  0 /*offset_remainder (3600%15)*/,
25769  0 /*delta_minutes*/,
25770  1916 /*until_year*/,
25771  5 /*until_month*/,
25772  1 /*until_day*/,
25773  0 /*until_time_code (0/15)*/,
25774  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25775  },
25776  // 1:00 C-Eur CE%sT 1918 Nov 11 11:00u
25777  {
25778  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
25779  "CE%T" /*format*/,
25780  240 /*offset_code (3600/15)*/,
25781  0 /*offset_remainder (3600%15)*/,
25782  0 /*delta_minutes*/,
25783  1918 /*until_year*/,
25784  11 /*until_month*/,
25785  11 /*until_day*/,
25786  2640 /*until_time_code (39600/15)*/,
25787  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
25788  },
25789  // 0:00 Belgium WE%sT 1940 May 20 2:00s
25790  {
25791  &kAtcAllZonePolicyBelgium /*zone_policy*/,
25792  "WE%T" /*format*/,
25793  0 /*offset_code (0/15)*/,
25794  0 /*offset_remainder (0%15)*/,
25795  0 /*delta_minutes*/,
25796  1940 /*until_year*/,
25797  5 /*until_month*/,
25798  20 /*until_day*/,
25799  480 /*until_time_code (7200/15)*/,
25800  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25801  },
25802  // 1:00 C-Eur CE%sT 1944 Sep 3
25803  {
25804  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
25805  "CE%T" /*format*/,
25806  240 /*offset_code (3600/15)*/,
25807  0 /*offset_remainder (3600%15)*/,
25808  0 /*delta_minutes*/,
25809  1944 /*until_year*/,
25810  9 /*until_month*/,
25811  3 /*until_day*/,
25812  0 /*until_time_code (0/15)*/,
25813  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25814  },
25815  // 1:00 Belgium CE%sT 1977
25816  {
25817  &kAtcAllZonePolicyBelgium /*zone_policy*/,
25818  "CE%T" /*format*/,
25819  240 /*offset_code (3600/15)*/,
25820  0 /*offset_remainder (3600%15)*/,
25821  0 /*delta_minutes*/,
25822  1977 /*until_year*/,
25823  1 /*until_month*/,
25824  1 /*until_day*/,
25825  0 /*until_time_code (0/15)*/,
25826  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25827  },
25828  // 1:00 EU CE%sT
25829  {
25830  &kAtcAllZonePolicyEU /*zone_policy*/,
25831  "CE%T" /*format*/,
25832  240 /*offset_code (3600/15)*/,
25833  0 /*offset_remainder (3600%15)*/,
25834  0 /*delta_minutes*/,
25835  32767 /*until_year*/,
25836  1 /*until_month*/,
25837  1 /*until_day*/,
25838  0 /*until_time_code (0/15)*/,
25839  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25840  },
25841 
25842 };
25843 
25844 static const char kAtcZoneNameEurope_Brussels[] = "Europe/Brussels";
25845 
25846 const AtcZoneInfo kAtcAllZoneEurope_Brussels = {
25847  kAtcZoneNameEurope_Brussels /*name*/,
25848  0xdee07337 /*zone_id*/,
25849  &kAtcAllZoneContext /*zone_context*/,
25850  9 /*num_eras*/,
25851  kAtcZoneEraEurope_Brussels /*eras*/,
25852  NULL /*target_info*/,
25853 };
25854 
25855 //---------------------------------------------------------------------------
25856 // Zone name: Europe/Bucharest
25857 // Zone Eras: 7
25858 //---------------------------------------------------------------------------
25859 
25860 static const AtcZoneEra kAtcZoneEraEurope_Bucharest[] = {
25861  // 1:44:24 - LMT 1891 Oct
25862  {
25863  NULL /*zone_policy*/,
25864  "LMT" /*format*/,
25865  417 /*offset_code (6264/15)*/,
25866  9 /*offset_remainder (6264%15)*/,
25867  0 /*delta_minutes*/,
25868  1891 /*until_year*/,
25869  10 /*until_month*/,
25870  1 /*until_day*/,
25871  0 /*until_time_code (0/15)*/,
25872  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25873  },
25874  // 1:44:24 - BMT 1931 Jul 24
25875  {
25876  NULL /*zone_policy*/,
25877  "BMT" /*format*/,
25878  417 /*offset_code (6264/15)*/,
25879  9 /*offset_remainder (6264%15)*/,
25880  0 /*delta_minutes*/,
25881  1931 /*until_year*/,
25882  7 /*until_month*/,
25883  24 /*until_day*/,
25884  0 /*until_time_code (0/15)*/,
25885  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25886  },
25887  // 2:00 Romania EE%sT 1981 Mar 29 2:00s
25888  {
25889  &kAtcAllZonePolicyRomania /*zone_policy*/,
25890  "EE%T" /*format*/,
25891  480 /*offset_code (7200/15)*/,
25892  0 /*offset_remainder (7200%15)*/,
25893  0 /*delta_minutes*/,
25894  1981 /*until_year*/,
25895  3 /*until_month*/,
25896  29 /*until_day*/,
25897  480 /*until_time_code (7200/15)*/,
25898  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
25899  },
25900  // 2:00 C-Eur EE%sT 1991
25901  {
25902  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
25903  "EE%T" /*format*/,
25904  480 /*offset_code (7200/15)*/,
25905  0 /*offset_remainder (7200%15)*/,
25906  0 /*delta_minutes*/,
25907  1991 /*until_year*/,
25908  1 /*until_month*/,
25909  1 /*until_day*/,
25910  0 /*until_time_code (0/15)*/,
25911  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25912  },
25913  // 2:00 Romania EE%sT 1994
25914  {
25915  &kAtcAllZonePolicyRomania /*zone_policy*/,
25916  "EE%T" /*format*/,
25917  480 /*offset_code (7200/15)*/,
25918  0 /*offset_remainder (7200%15)*/,
25919  0 /*delta_minutes*/,
25920  1994 /*until_year*/,
25921  1 /*until_month*/,
25922  1 /*until_day*/,
25923  0 /*until_time_code (0/15)*/,
25924  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25925  },
25926  // 2:00 E-Eur EE%sT 1997
25927  {
25928  &kAtcAllZonePolicyE_Eur /*zone_policy*/,
25929  "EE%T" /*format*/,
25930  480 /*offset_code (7200/15)*/,
25931  0 /*offset_remainder (7200%15)*/,
25932  0 /*delta_minutes*/,
25933  1997 /*until_year*/,
25934  1 /*until_month*/,
25935  1 /*until_day*/,
25936  0 /*until_time_code (0/15)*/,
25937  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25938  },
25939  // 2:00 EU EE%sT
25940  {
25941  &kAtcAllZonePolicyEU /*zone_policy*/,
25942  "EE%T" /*format*/,
25943  480 /*offset_code (7200/15)*/,
25944  0 /*offset_remainder (7200%15)*/,
25945  0 /*delta_minutes*/,
25946  32767 /*until_year*/,
25947  1 /*until_month*/,
25948  1 /*until_day*/,
25949  0 /*until_time_code (0/15)*/,
25950  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25951  },
25952 
25953 };
25954 
25955 static const char kAtcZoneNameEurope_Bucharest[] = "Europe/Bucharest";
25956 
25957 const AtcZoneInfo kAtcAllZoneEurope_Bucharest = {
25958  kAtcZoneNameEurope_Bucharest /*name*/,
25959  0xfb349ec5 /*zone_id*/,
25960  &kAtcAllZoneContext /*zone_context*/,
25961  7 /*num_eras*/,
25962  kAtcZoneEraEurope_Bucharest /*eras*/,
25963  NULL /*target_info*/,
25964 };
25965 
25966 //---------------------------------------------------------------------------
25967 // Zone name: Europe/Budapest
25968 // Zone Eras: 6
25969 //---------------------------------------------------------------------------
25970 
25971 static const AtcZoneEra kAtcZoneEraEurope_Budapest[] = {
25972  // 1:16:20 - LMT 1890 Nov 1
25973  {
25974  NULL /*zone_policy*/,
25975  "LMT" /*format*/,
25976  305 /*offset_code (4580/15)*/,
25977  5 /*offset_remainder (4580%15)*/,
25978  0 /*delta_minutes*/,
25979  1890 /*until_year*/,
25980  11 /*until_month*/,
25981  1 /*until_day*/,
25982  0 /*until_time_code (0/15)*/,
25983  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25984  },
25985  // 1:00 C-Eur CE%sT 1918
25986  {
25987  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
25988  "CE%T" /*format*/,
25989  240 /*offset_code (3600/15)*/,
25990  0 /*offset_remainder (3600%15)*/,
25991  0 /*delta_minutes*/,
25992  1918 /*until_year*/,
25993  1 /*until_month*/,
25994  1 /*until_day*/,
25995  0 /*until_time_code (0/15)*/,
25996  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
25997  },
25998  // 1:00 Hungary CE%sT 1941 Apr 7 23:00
25999  {
26000  &kAtcAllZonePolicyHungary /*zone_policy*/,
26001  "CE%T" /*format*/,
26002  240 /*offset_code (3600/15)*/,
26003  0 /*offset_remainder (3600%15)*/,
26004  0 /*delta_minutes*/,
26005  1941 /*until_year*/,
26006  4 /*until_month*/,
26007  7 /*until_day*/,
26008  5520 /*until_time_code (82800/15)*/,
26009  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26010  },
26011  // 1:00 C-Eur CE%sT 1945
26012  {
26013  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
26014  "CE%T" /*format*/,
26015  240 /*offset_code (3600/15)*/,
26016  0 /*offset_remainder (3600%15)*/,
26017  0 /*delta_minutes*/,
26018  1945 /*until_year*/,
26019  1 /*until_month*/,
26020  1 /*until_day*/,
26021  0 /*until_time_code (0/15)*/,
26022  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26023  },
26024  // 1:00 Hungary CE%sT 1984
26025  {
26026  &kAtcAllZonePolicyHungary /*zone_policy*/,
26027  "CE%T" /*format*/,
26028  240 /*offset_code (3600/15)*/,
26029  0 /*offset_remainder (3600%15)*/,
26030  0 /*delta_minutes*/,
26031  1984 /*until_year*/,
26032  1 /*until_month*/,
26033  1 /*until_day*/,
26034  0 /*until_time_code (0/15)*/,
26035  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26036  },
26037  // 1:00 EU CE%sT
26038  {
26039  &kAtcAllZonePolicyEU /*zone_policy*/,
26040  "CE%T" /*format*/,
26041  240 /*offset_code (3600/15)*/,
26042  0 /*offset_remainder (3600%15)*/,
26043  0 /*delta_minutes*/,
26044  32767 /*until_year*/,
26045  1 /*until_month*/,
26046  1 /*until_day*/,
26047  0 /*until_time_code (0/15)*/,
26048  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26049  },
26050 
26051 };
26052 
26053 static const char kAtcZoneNameEurope_Budapest[] = "Europe/Budapest";
26054 
26055 const AtcZoneInfo kAtcAllZoneEurope_Budapest = {
26056  kAtcZoneNameEurope_Budapest /*name*/,
26057  0x9ce0197c /*zone_id*/,
26058  &kAtcAllZoneContext /*zone_context*/,
26059  6 /*num_eras*/,
26060  kAtcZoneEraEurope_Budapest /*eras*/,
26061  NULL /*target_info*/,
26062 };
26063 
26064 //---------------------------------------------------------------------------
26065 // Zone name: Europe/Chisinau
26066 // Zone Eras: 10
26067 //---------------------------------------------------------------------------
26068 
26069 static const AtcZoneEra kAtcZoneEraEurope_Chisinau[] = {
26070  // 1:55:20 - LMT 1880
26071  {
26072  NULL /*zone_policy*/,
26073  "LMT" /*format*/,
26074  461 /*offset_code (6920/15)*/,
26075  5 /*offset_remainder (6920%15)*/,
26076  0 /*delta_minutes*/,
26077  1880 /*until_year*/,
26078  1 /*until_month*/,
26079  1 /*until_day*/,
26080  0 /*until_time_code (0/15)*/,
26081  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26082  },
26083  // 1:55 - CMT 1918 Feb 15
26084  {
26085  NULL /*zone_policy*/,
26086  "CMT" /*format*/,
26087  460 /*offset_code (6900/15)*/,
26088  0 /*offset_remainder (6900%15)*/,
26089  0 /*delta_minutes*/,
26090  1918 /*until_year*/,
26091  2 /*until_month*/,
26092  15 /*until_day*/,
26093  0 /*until_time_code (0/15)*/,
26094  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26095  },
26096  // 1:44:24 - BMT 1931 Jul 24
26097  {
26098  NULL /*zone_policy*/,
26099  "BMT" /*format*/,
26100  417 /*offset_code (6264/15)*/,
26101  9 /*offset_remainder (6264%15)*/,
26102  0 /*delta_minutes*/,
26103  1931 /*until_year*/,
26104  7 /*until_month*/,
26105  24 /*until_day*/,
26106  0 /*until_time_code (0/15)*/,
26107  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26108  },
26109  // 2:00 Romania EE%sT 1940 Aug 15
26110  {
26111  &kAtcAllZonePolicyRomania /*zone_policy*/,
26112  "EE%T" /*format*/,
26113  480 /*offset_code (7200/15)*/,
26114  0 /*offset_remainder (7200%15)*/,
26115  0 /*delta_minutes*/,
26116  1940 /*until_year*/,
26117  8 /*until_month*/,
26118  15 /*until_day*/,
26119  0 /*until_time_code (0/15)*/,
26120  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26121  },
26122  // 2:00 1:00 EEST 1941 Jul 17
26123  {
26124  NULL /*zone_policy*/,
26125  "EEST" /*format*/,
26126  480 /*offset_code (7200/15)*/,
26127  0 /*offset_remainder (7200%15)*/,
26128  60 /*delta_minutes*/,
26129  1941 /*until_year*/,
26130  7 /*until_month*/,
26131  17 /*until_day*/,
26132  0 /*until_time_code (0/15)*/,
26133  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26134  },
26135  // 1:00 C-Eur CE%sT 1944 Aug 24
26136  {
26137  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
26138  "CE%T" /*format*/,
26139  240 /*offset_code (3600/15)*/,
26140  0 /*offset_remainder (3600%15)*/,
26141  0 /*delta_minutes*/,
26142  1944 /*until_year*/,
26143  8 /*until_month*/,
26144  24 /*until_day*/,
26145  0 /*until_time_code (0/15)*/,
26146  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26147  },
26148  // 3:00 Russia MSK/MSD 1990 May 6 2:00
26149  {
26150  &kAtcAllZonePolicyRussia /*zone_policy*/,
26151  "MSK/MSD" /*format*/,
26152  720 /*offset_code (10800/15)*/,
26153  0 /*offset_remainder (10800%15)*/,
26154  0 /*delta_minutes*/,
26155  1990 /*until_year*/,
26156  5 /*until_month*/,
26157  6 /*until_day*/,
26158  480 /*until_time_code (7200/15)*/,
26159  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26160  },
26161  // 2:00 Russia EE%sT 1992
26162  {
26163  &kAtcAllZonePolicyRussia /*zone_policy*/,
26164  "EE%T" /*format*/,
26165  480 /*offset_code (7200/15)*/,
26166  0 /*offset_remainder (7200%15)*/,
26167  0 /*delta_minutes*/,
26168  1992 /*until_year*/,
26169  1 /*until_month*/,
26170  1 /*until_day*/,
26171  0 /*until_time_code (0/15)*/,
26172  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26173  },
26174  // 2:00 E-Eur EE%sT 1997
26175  {
26176  &kAtcAllZonePolicyE_Eur /*zone_policy*/,
26177  "EE%T" /*format*/,
26178  480 /*offset_code (7200/15)*/,
26179  0 /*offset_remainder (7200%15)*/,
26180  0 /*delta_minutes*/,
26181  1997 /*until_year*/,
26182  1 /*until_month*/,
26183  1 /*until_day*/,
26184  0 /*until_time_code (0/15)*/,
26185  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26186  },
26187  // 2:00 Moldova EE%sT
26188  {
26189  &kAtcAllZonePolicyMoldova /*zone_policy*/,
26190  "EE%T" /*format*/,
26191  480 /*offset_code (7200/15)*/,
26192  0 /*offset_remainder (7200%15)*/,
26193  0 /*delta_minutes*/,
26194  32767 /*until_year*/,
26195  1 /*until_month*/,
26196  1 /*until_day*/,
26197  0 /*until_time_code (0/15)*/,
26198  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26199  },
26200 
26201 };
26202 
26203 static const char kAtcZoneNameEurope_Chisinau[] = "Europe/Chisinau";
26204 
26205 const AtcZoneInfo kAtcAllZoneEurope_Chisinau = {
26206  kAtcZoneNameEurope_Chisinau /*name*/,
26207  0xad58aa18 /*zone_id*/,
26208  &kAtcAllZoneContext /*zone_context*/,
26209  10 /*num_eras*/,
26210  kAtcZoneEraEurope_Chisinau /*eras*/,
26211  NULL /*target_info*/,
26212 };
26213 
26214 //---------------------------------------------------------------------------
26215 // Zone name: Europe/Dublin
26216 // Zone Eras: 11
26217 //---------------------------------------------------------------------------
26218 
26219 static const AtcZoneEra kAtcZoneEraEurope_Dublin[] = {
26220  // -0:25:21 - LMT 1880 Aug 2
26221  {
26222  NULL /*zone_policy*/,
26223  "LMT" /*format*/,
26224  -102 /*offset_code (-1521/15)*/,
26225  9 /*offset_remainder (-1521%15)*/,
26226  0 /*delta_minutes*/,
26227  1880 /*until_year*/,
26228  8 /*until_month*/,
26229  2 /*until_day*/,
26230  0 /*until_time_code (0/15)*/,
26231  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26232  },
26233  // -0:25:21 - DMT 1916 May 21 2:00s
26234  {
26235  NULL /*zone_policy*/,
26236  "DMT" /*format*/,
26237  -102 /*offset_code (-1521/15)*/,
26238  9 /*offset_remainder (-1521%15)*/,
26239  0 /*delta_minutes*/,
26240  1916 /*until_year*/,
26241  5 /*until_month*/,
26242  21 /*until_day*/,
26243  480 /*until_time_code (7200/15)*/,
26244  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26245  },
26246  // -0:25:21 1:00 IST 1916 Oct 1 2:00s
26247  {
26248  NULL /*zone_policy*/,
26249  "IST" /*format*/,
26250  -102 /*offset_code (-1521/15)*/,
26251  9 /*offset_remainder (-1521%15)*/,
26252  60 /*delta_minutes*/,
26253  1916 /*until_year*/,
26254  10 /*until_month*/,
26255  1 /*until_day*/,
26256  480 /*until_time_code (7200/15)*/,
26257  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26258  },
26259  // 0:00 GB-Eire %s 1921 Dec 6
26260  {
26261  &kAtcAllZonePolicyGB_Eire /*zone_policy*/,
26262  "%" /*format*/,
26263  0 /*offset_code (0/15)*/,
26264  0 /*offset_remainder (0%15)*/,
26265  0 /*delta_minutes*/,
26266  1921 /*until_year*/,
26267  12 /*until_month*/,
26268  6 /*until_day*/,
26269  0 /*until_time_code (0/15)*/,
26270  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26271  },
26272  // 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00s
26273  {
26274  &kAtcAllZonePolicyGB_Eire /*zone_policy*/,
26275  "GMT/IST" /*format*/,
26276  0 /*offset_code (0/15)*/,
26277  0 /*offset_remainder (0%15)*/,
26278  0 /*delta_minutes*/,
26279  1940 /*until_year*/,
26280  2 /*until_month*/,
26281  25 /*until_day*/,
26282  480 /*until_time_code (7200/15)*/,
26283  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26284  },
26285  // 0:00 1:00 IST 1946 Oct 6 2:00s
26286  {
26287  NULL /*zone_policy*/,
26288  "IST" /*format*/,
26289  0 /*offset_code (0/15)*/,
26290  0 /*offset_remainder (0%15)*/,
26291  60 /*delta_minutes*/,
26292  1946 /*until_year*/,
26293  10 /*until_month*/,
26294  6 /*until_day*/,
26295  480 /*until_time_code (7200/15)*/,
26296  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26297  },
26298  // 0:00 - GMT 1947 Mar 16 2:00s
26299  {
26300  NULL /*zone_policy*/,
26301  "GMT" /*format*/,
26302  0 /*offset_code (0/15)*/,
26303  0 /*offset_remainder (0%15)*/,
26304  0 /*delta_minutes*/,
26305  1947 /*until_year*/,
26306  3 /*until_month*/,
26307  16 /*until_day*/,
26308  480 /*until_time_code (7200/15)*/,
26309  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26310  },
26311  // 0:00 1:00 IST 1947 Nov 2 2:00s
26312  {
26313  NULL /*zone_policy*/,
26314  "IST" /*format*/,
26315  0 /*offset_code (0/15)*/,
26316  0 /*offset_remainder (0%15)*/,
26317  60 /*delta_minutes*/,
26318  1947 /*until_year*/,
26319  11 /*until_month*/,
26320  2 /*until_day*/,
26321  480 /*until_time_code (7200/15)*/,
26322  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26323  },
26324  // 0:00 - GMT 1948 Apr 18 2:00s
26325  {
26326  NULL /*zone_policy*/,
26327  "GMT" /*format*/,
26328  0 /*offset_code (0/15)*/,
26329  0 /*offset_remainder (0%15)*/,
26330  0 /*delta_minutes*/,
26331  1948 /*until_year*/,
26332  4 /*until_month*/,
26333  18 /*until_day*/,
26334  480 /*until_time_code (7200/15)*/,
26335  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26336  },
26337  // 0:00 GB-Eire GMT/IST 1968 Oct 27
26338  {
26339  &kAtcAllZonePolicyGB_Eire /*zone_policy*/,
26340  "GMT/IST" /*format*/,
26341  0 /*offset_code (0/15)*/,
26342  0 /*offset_remainder (0%15)*/,
26343  0 /*delta_minutes*/,
26344  1968 /*until_year*/,
26345  10 /*until_month*/,
26346  27 /*until_day*/,
26347  0 /*until_time_code (0/15)*/,
26348  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26349  },
26350  // 1:00 Eire IST/GMT
26351  {
26352  &kAtcAllZonePolicyEire /*zone_policy*/,
26353  "IST/GMT" /*format*/,
26354  240 /*offset_code (3600/15)*/,
26355  0 /*offset_remainder (3600%15)*/,
26356  0 /*delta_minutes*/,
26357  32767 /*until_year*/,
26358  1 /*until_month*/,
26359  1 /*until_day*/,
26360  0 /*until_time_code (0/15)*/,
26361  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26362  },
26363 
26364 };
26365 
26366 static const char kAtcZoneNameEurope_Dublin[] = "Europe/Dublin";
26367 
26368 const AtcZoneInfo kAtcAllZoneEurope_Dublin = {
26369  kAtcZoneNameEurope_Dublin /*name*/,
26370  0x4a275f62 /*zone_id*/,
26371  &kAtcAllZoneContext /*zone_context*/,
26372  11 /*num_eras*/,
26373  kAtcZoneEraEurope_Dublin /*eras*/,
26374  NULL /*target_info*/,
26375 };
26376 
26377 //---------------------------------------------------------------------------
26378 // Zone name: Europe/Gibraltar
26379 // Zone Eras: 4
26380 //---------------------------------------------------------------------------
26381 
26382 static const AtcZoneEra kAtcZoneEraEurope_Gibraltar[] = {
26383  // -0:21:24 - LMT 1880 Aug 2
26384  {
26385  NULL /*zone_policy*/,
26386  "LMT" /*format*/,
26387  -86 /*offset_code (-1284/15)*/,
26388  6 /*offset_remainder (-1284%15)*/,
26389  0 /*delta_minutes*/,
26390  1880 /*until_year*/,
26391  8 /*until_month*/,
26392  2 /*until_day*/,
26393  0 /*until_time_code (0/15)*/,
26394  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26395  },
26396  // 0:00 GB-Eire %s 1957 Apr 14 2:00
26397  {
26398  &kAtcAllZonePolicyGB_Eire /*zone_policy*/,
26399  "%" /*format*/,
26400  0 /*offset_code (0/15)*/,
26401  0 /*offset_remainder (0%15)*/,
26402  0 /*delta_minutes*/,
26403  1957 /*until_year*/,
26404  4 /*until_month*/,
26405  14 /*until_day*/,
26406  480 /*until_time_code (7200/15)*/,
26407  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26408  },
26409  // 1:00 - CET 1982
26410  {
26411  NULL /*zone_policy*/,
26412  "CET" /*format*/,
26413  240 /*offset_code (3600/15)*/,
26414  0 /*offset_remainder (3600%15)*/,
26415  0 /*delta_minutes*/,
26416  1982 /*until_year*/,
26417  1 /*until_month*/,
26418  1 /*until_day*/,
26419  0 /*until_time_code (0/15)*/,
26420  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26421  },
26422  // 1:00 EU CE%sT
26423  {
26424  &kAtcAllZonePolicyEU /*zone_policy*/,
26425  "CE%T" /*format*/,
26426  240 /*offset_code (3600/15)*/,
26427  0 /*offset_remainder (3600%15)*/,
26428  0 /*delta_minutes*/,
26429  32767 /*until_year*/,
26430  1 /*until_month*/,
26431  1 /*until_day*/,
26432  0 /*until_time_code (0/15)*/,
26433  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26434  },
26435 
26436 };
26437 
26438 static const char kAtcZoneNameEurope_Gibraltar[] = "Europe/Gibraltar";
26439 
26440 const AtcZoneInfo kAtcAllZoneEurope_Gibraltar = {
26441  kAtcZoneNameEurope_Gibraltar /*name*/,
26442  0xf8e325fc /*zone_id*/,
26443  &kAtcAllZoneContext /*zone_context*/,
26444  4 /*num_eras*/,
26445  kAtcZoneEraEurope_Gibraltar /*eras*/,
26446  NULL /*target_info*/,
26447 };
26448 
26449 //---------------------------------------------------------------------------
26450 // Zone name: Europe/Helsinki
26451 // Zone Eras: 4
26452 //---------------------------------------------------------------------------
26453 
26454 static const AtcZoneEra kAtcZoneEraEurope_Helsinki[] = {
26455  // 1:39:49 - LMT 1878 May 31
26456  {
26457  NULL /*zone_policy*/,
26458  "LMT" /*format*/,
26459  399 /*offset_code (5989/15)*/,
26460  4 /*offset_remainder (5989%15)*/,
26461  0 /*delta_minutes*/,
26462  1878 /*until_year*/,
26463  5 /*until_month*/,
26464  31 /*until_day*/,
26465  0 /*until_time_code (0/15)*/,
26466  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26467  },
26468  // 1:39:49 - HMT 1921 May
26469  {
26470  NULL /*zone_policy*/,
26471  "HMT" /*format*/,
26472  399 /*offset_code (5989/15)*/,
26473  4 /*offset_remainder (5989%15)*/,
26474  0 /*delta_minutes*/,
26475  1921 /*until_year*/,
26476  5 /*until_month*/,
26477  1 /*until_day*/,
26478  0 /*until_time_code (0/15)*/,
26479  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26480  },
26481  // 2:00 Finland EE%sT 1983
26482  {
26483  &kAtcAllZonePolicyFinland /*zone_policy*/,
26484  "EE%T" /*format*/,
26485  480 /*offset_code (7200/15)*/,
26486  0 /*offset_remainder (7200%15)*/,
26487  0 /*delta_minutes*/,
26488  1983 /*until_year*/,
26489  1 /*until_month*/,
26490  1 /*until_day*/,
26491  0 /*until_time_code (0/15)*/,
26492  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26493  },
26494  // 2:00 EU EE%sT
26495  {
26496  &kAtcAllZonePolicyEU /*zone_policy*/,
26497  "EE%T" /*format*/,
26498  480 /*offset_code (7200/15)*/,
26499  0 /*offset_remainder (7200%15)*/,
26500  0 /*delta_minutes*/,
26501  32767 /*until_year*/,
26502  1 /*until_month*/,
26503  1 /*until_day*/,
26504  0 /*until_time_code (0/15)*/,
26505  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26506  },
26507 
26508 };
26509 
26510 static const char kAtcZoneNameEurope_Helsinki[] = "Europe/Helsinki";
26511 
26512 const AtcZoneInfo kAtcAllZoneEurope_Helsinki = {
26513  kAtcZoneNameEurope_Helsinki /*name*/,
26514  0x6ab2975b /*zone_id*/,
26515  &kAtcAllZoneContext /*zone_context*/,
26516  4 /*num_eras*/,
26517  kAtcZoneEraEurope_Helsinki /*eras*/,
26518  NULL /*target_info*/,
26519 };
26520 
26521 //---------------------------------------------------------------------------
26522 // Zone name: Europe/Istanbul
26523 // Zone Eras: 13
26524 //---------------------------------------------------------------------------
26525 
26526 static const AtcZoneEra kAtcZoneEraEurope_Istanbul[] = {
26527  // 1:55:52 - LMT 1880
26528  {
26529  NULL /*zone_policy*/,
26530  "LMT" /*format*/,
26531  463 /*offset_code (6952/15)*/,
26532  7 /*offset_remainder (6952%15)*/,
26533  0 /*delta_minutes*/,
26534  1880 /*until_year*/,
26535  1 /*until_month*/,
26536  1 /*until_day*/,
26537  0 /*until_time_code (0/15)*/,
26538  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26539  },
26540  // 1:56:56 - IMT 1910 Oct
26541  {
26542  NULL /*zone_policy*/,
26543  "IMT" /*format*/,
26544  467 /*offset_code (7016/15)*/,
26545  11 /*offset_remainder (7016%15)*/,
26546  0 /*delta_minutes*/,
26547  1910 /*until_year*/,
26548  10 /*until_month*/,
26549  1 /*until_day*/,
26550  0 /*until_time_code (0/15)*/,
26551  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26552  },
26553  // 2:00 Turkey EE%sT 1978 Jun 29
26554  {
26555  &kAtcAllZonePolicyTurkey /*zone_policy*/,
26556  "EE%T" /*format*/,
26557  480 /*offset_code (7200/15)*/,
26558  0 /*offset_remainder (7200%15)*/,
26559  0 /*delta_minutes*/,
26560  1978 /*until_year*/,
26561  6 /*until_month*/,
26562  29 /*until_day*/,
26563  0 /*until_time_code (0/15)*/,
26564  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26565  },
26566  // 3:00 Turkey +03/+04 1984 Nov 1 2:00
26567  {
26568  &kAtcAllZonePolicyTurkey /*zone_policy*/,
26569  "+03/+04" /*format*/,
26570  720 /*offset_code (10800/15)*/,
26571  0 /*offset_remainder (10800%15)*/,
26572  0 /*delta_minutes*/,
26573  1984 /*until_year*/,
26574  11 /*until_month*/,
26575  1 /*until_day*/,
26576  480 /*until_time_code (7200/15)*/,
26577  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26578  },
26579  // 2:00 Turkey EE%sT 2007
26580  {
26581  &kAtcAllZonePolicyTurkey /*zone_policy*/,
26582  "EE%T" /*format*/,
26583  480 /*offset_code (7200/15)*/,
26584  0 /*offset_remainder (7200%15)*/,
26585  0 /*delta_minutes*/,
26586  2007 /*until_year*/,
26587  1 /*until_month*/,
26588  1 /*until_day*/,
26589  0 /*until_time_code (0/15)*/,
26590  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26591  },
26592  // 2:00 EU EE%sT 2011 Mar 27 1:00u
26593  {
26594  &kAtcAllZonePolicyEU /*zone_policy*/,
26595  "EE%T" /*format*/,
26596  480 /*offset_code (7200/15)*/,
26597  0 /*offset_remainder (7200%15)*/,
26598  0 /*delta_minutes*/,
26599  2011 /*until_year*/,
26600  3 /*until_month*/,
26601  27 /*until_day*/,
26602  240 /*until_time_code (3600/15)*/,
26603  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26604  },
26605  // 2:00 - EET 2011 Mar 28 1:00u
26606  {
26607  NULL /*zone_policy*/,
26608  "EET" /*format*/,
26609  480 /*offset_code (7200/15)*/,
26610  0 /*offset_remainder (7200%15)*/,
26611  0 /*delta_minutes*/,
26612  2011 /*until_year*/,
26613  3 /*until_month*/,
26614  28 /*until_day*/,
26615  240 /*until_time_code (3600/15)*/,
26616  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26617  },
26618  // 2:00 EU EE%sT 2014 Mar 30 1:00u
26619  {
26620  &kAtcAllZonePolicyEU /*zone_policy*/,
26621  "EE%T" /*format*/,
26622  480 /*offset_code (7200/15)*/,
26623  0 /*offset_remainder (7200%15)*/,
26624  0 /*delta_minutes*/,
26625  2014 /*until_year*/,
26626  3 /*until_month*/,
26627  30 /*until_day*/,
26628  240 /*until_time_code (3600/15)*/,
26629  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26630  },
26631  // 2:00 - EET 2014 Mar 31 1:00u
26632  {
26633  NULL /*zone_policy*/,
26634  "EET" /*format*/,
26635  480 /*offset_code (7200/15)*/,
26636  0 /*offset_remainder (7200%15)*/,
26637  0 /*delta_minutes*/,
26638  2014 /*until_year*/,
26639  3 /*until_month*/,
26640  31 /*until_day*/,
26641  240 /*until_time_code (3600/15)*/,
26642  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26643  },
26644  // 2:00 EU EE%sT 2015 Oct 25 1:00u
26645  {
26646  &kAtcAllZonePolicyEU /*zone_policy*/,
26647  "EE%T" /*format*/,
26648  480 /*offset_code (7200/15)*/,
26649  0 /*offset_remainder (7200%15)*/,
26650  0 /*delta_minutes*/,
26651  2015 /*until_year*/,
26652  10 /*until_month*/,
26653  25 /*until_day*/,
26654  240 /*until_time_code (3600/15)*/,
26655  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26656  },
26657  // 2:00 1:00 EEST 2015 Nov 8 1:00u
26658  {
26659  NULL /*zone_policy*/,
26660  "EEST" /*format*/,
26661  480 /*offset_code (7200/15)*/,
26662  0 /*offset_remainder (7200%15)*/,
26663  60 /*delta_minutes*/,
26664  2015 /*until_year*/,
26665  11 /*until_month*/,
26666  8 /*until_day*/,
26667  240 /*until_time_code (3600/15)*/,
26668  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26669  },
26670  // 2:00 EU EE%sT 2016 Sep 7
26671  {
26672  &kAtcAllZonePolicyEU /*zone_policy*/,
26673  "EE%T" /*format*/,
26674  480 /*offset_code (7200/15)*/,
26675  0 /*offset_remainder (7200%15)*/,
26676  0 /*delta_minutes*/,
26677  2016 /*until_year*/,
26678  9 /*until_month*/,
26679  7 /*until_day*/,
26680  0 /*until_time_code (0/15)*/,
26681  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26682  },
26683  // 3:00 - +03
26684  {
26685  NULL /*zone_policy*/,
26686  "+03" /*format*/,
26687  720 /*offset_code (10800/15)*/,
26688  0 /*offset_remainder (10800%15)*/,
26689  0 /*delta_minutes*/,
26690  32767 /*until_year*/,
26691  1 /*until_month*/,
26692  1 /*until_day*/,
26693  0 /*until_time_code (0/15)*/,
26694  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26695  },
26696 
26697 };
26698 
26699 static const char kAtcZoneNameEurope_Istanbul[] = "Europe/Istanbul";
26700 
26701 const AtcZoneInfo kAtcAllZoneEurope_Istanbul = {
26702  kAtcZoneNameEurope_Istanbul /*name*/,
26703  0x9e09d6e6 /*zone_id*/,
26704  &kAtcAllZoneContext /*zone_context*/,
26705  13 /*num_eras*/,
26706  kAtcZoneEraEurope_Istanbul /*eras*/,
26707  NULL /*target_info*/,
26708 };
26709 
26710 //---------------------------------------------------------------------------
26711 // Zone name: Europe/Kaliningrad
26712 // Zone Eras: 7
26713 //---------------------------------------------------------------------------
26714 
26715 static const AtcZoneEra kAtcZoneEraEurope_Kaliningrad[] = {
26716  // 1:22:00 - LMT 1893 Apr
26717  {
26718  NULL /*zone_policy*/,
26719  "LMT" /*format*/,
26720  328 /*offset_code (4920/15)*/,
26721  0 /*offset_remainder (4920%15)*/,
26722  0 /*delta_minutes*/,
26723  1893 /*until_year*/,
26724  4 /*until_month*/,
26725  1 /*until_day*/,
26726  0 /*until_time_code (0/15)*/,
26727  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26728  },
26729  // 1:00 C-Eur CE%sT 1945 Apr 10
26730  {
26731  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
26732  "CE%T" /*format*/,
26733  240 /*offset_code (3600/15)*/,
26734  0 /*offset_remainder (3600%15)*/,
26735  0 /*delta_minutes*/,
26736  1945 /*until_year*/,
26737  4 /*until_month*/,
26738  10 /*until_day*/,
26739  0 /*until_time_code (0/15)*/,
26740  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26741  },
26742  // 2:00 Poland EE%sT 1946 Apr 7
26743  {
26744  &kAtcAllZonePolicyPoland /*zone_policy*/,
26745  "EE%T" /*format*/,
26746  480 /*offset_code (7200/15)*/,
26747  0 /*offset_remainder (7200%15)*/,
26748  0 /*delta_minutes*/,
26749  1946 /*until_year*/,
26750  4 /*until_month*/,
26751  7 /*until_day*/,
26752  0 /*until_time_code (0/15)*/,
26753  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26754  },
26755  // 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
26756  {
26757  &kAtcAllZonePolicyRussia /*zone_policy*/,
26758  "MSK/MSD" /*format*/,
26759  720 /*offset_code (10800/15)*/,
26760  0 /*offset_remainder (10800%15)*/,
26761  0 /*delta_minutes*/,
26762  1989 /*until_year*/,
26763  3 /*until_month*/,
26764  26 /*until_day*/,
26765  480 /*until_time_code (7200/15)*/,
26766  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26767  },
26768  // 2:00 Russia EE%sT 2011 Mar 27 2:00s
26769  {
26770  &kAtcAllZonePolicyRussia /*zone_policy*/,
26771  "EE%T" /*format*/,
26772  480 /*offset_code (7200/15)*/,
26773  0 /*offset_remainder (7200%15)*/,
26774  0 /*delta_minutes*/,
26775  2011 /*until_year*/,
26776  3 /*until_month*/,
26777  27 /*until_day*/,
26778  480 /*until_time_code (7200/15)*/,
26779  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26780  },
26781  // 3:00 - +03 2014 Oct 26 2:00s
26782  {
26783  NULL /*zone_policy*/,
26784  "+03" /*format*/,
26785  720 /*offset_code (10800/15)*/,
26786  0 /*offset_remainder (10800%15)*/,
26787  0 /*delta_minutes*/,
26788  2014 /*until_year*/,
26789  10 /*until_month*/,
26790  26 /*until_day*/,
26791  480 /*until_time_code (7200/15)*/,
26792  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26793  },
26794  // 2:00 - EET
26795  {
26796  NULL /*zone_policy*/,
26797  "EET" /*format*/,
26798  480 /*offset_code (7200/15)*/,
26799  0 /*offset_remainder (7200%15)*/,
26800  0 /*delta_minutes*/,
26801  32767 /*until_year*/,
26802  1 /*until_month*/,
26803  1 /*until_day*/,
26804  0 /*until_time_code (0/15)*/,
26805  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26806  },
26807 
26808 };
26809 
26810 static const char kAtcZoneNameEurope_Kaliningrad[] = "Europe/Kaliningrad";
26811 
26812 const AtcZoneInfo kAtcAllZoneEurope_Kaliningrad = {
26813  kAtcZoneNameEurope_Kaliningrad /*name*/,
26814  0xd33b2f28 /*zone_id*/,
26815  &kAtcAllZoneContext /*zone_context*/,
26816  7 /*num_eras*/,
26817  kAtcZoneEraEurope_Kaliningrad /*eras*/,
26818  NULL /*target_info*/,
26819 };
26820 
26821 //---------------------------------------------------------------------------
26822 // Zone name: Europe/Kirov
26823 // Zone Eras: 8
26824 //---------------------------------------------------------------------------
26825 
26826 static const AtcZoneEra kAtcZoneEraEurope_Kirov[] = {
26827  // 3:18:48 - LMT 1919 Jul 1 0:00u
26828  {
26829  NULL /*zone_policy*/,
26830  "LMT" /*format*/,
26831  795 /*offset_code (11928/15)*/,
26832  3 /*offset_remainder (11928%15)*/,
26833  0 /*delta_minutes*/,
26834  1919 /*until_year*/,
26835  7 /*until_month*/,
26836  1 /*until_day*/,
26837  0 /*until_time_code (0/15)*/,
26838  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
26839  },
26840  // 3:00 - +03 1930 Jun 21
26841  {
26842  NULL /*zone_policy*/,
26843  "+03" /*format*/,
26844  720 /*offset_code (10800/15)*/,
26845  0 /*offset_remainder (10800%15)*/,
26846  0 /*delta_minutes*/,
26847  1930 /*until_year*/,
26848  6 /*until_month*/,
26849  21 /*until_day*/,
26850  0 /*until_time_code (0/15)*/,
26851  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26852  },
26853  // 4:00 Russia +04/+05 1989 Mar 26 2:00s
26854  {
26855  &kAtcAllZonePolicyRussia /*zone_policy*/,
26856  "+04/+05" /*format*/,
26857  960 /*offset_code (14400/15)*/,
26858  0 /*offset_remainder (14400%15)*/,
26859  0 /*delta_minutes*/,
26860  1989 /*until_year*/,
26861  3 /*until_month*/,
26862  26 /*until_day*/,
26863  480 /*until_time_code (7200/15)*/,
26864  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26865  },
26866  // 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
26867  {
26868  &kAtcAllZonePolicyRussia /*zone_policy*/,
26869  "MSK/MSD" /*format*/,
26870  720 /*offset_code (10800/15)*/,
26871  0 /*offset_remainder (10800%15)*/,
26872  0 /*delta_minutes*/,
26873  1991 /*until_year*/,
26874  3 /*until_month*/,
26875  31 /*until_day*/,
26876  480 /*until_time_code (7200/15)*/,
26877  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26878  },
26879  // 4:00 - +04 1992 Mar 29 2:00s
26880  {
26881  NULL /*zone_policy*/,
26882  "+04" /*format*/,
26883  960 /*offset_code (14400/15)*/,
26884  0 /*offset_remainder (14400%15)*/,
26885  0 /*delta_minutes*/,
26886  1992 /*until_year*/,
26887  3 /*until_month*/,
26888  29 /*until_day*/,
26889  480 /*until_time_code (7200/15)*/,
26890  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26891  },
26892  // 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
26893  {
26894  &kAtcAllZonePolicyRussia /*zone_policy*/,
26895  "MSK/MSD" /*format*/,
26896  720 /*offset_code (10800/15)*/,
26897  0 /*offset_remainder (10800%15)*/,
26898  0 /*delta_minutes*/,
26899  2011 /*until_year*/,
26900  3 /*until_month*/,
26901  27 /*until_day*/,
26902  480 /*until_time_code (7200/15)*/,
26903  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26904  },
26905  // 4:00 - MSK 2014 Oct 26 2:00s
26906  {
26907  NULL /*zone_policy*/,
26908  "MSK" /*format*/,
26909  960 /*offset_code (14400/15)*/,
26910  0 /*offset_remainder (14400%15)*/,
26911  0 /*delta_minutes*/,
26912  2014 /*until_year*/,
26913  10 /*until_month*/,
26914  26 /*until_day*/,
26915  480 /*until_time_code (7200/15)*/,
26916  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
26917  },
26918  // 3:00 - MSK
26919  {
26920  NULL /*zone_policy*/,
26921  "MSK" /*format*/,
26922  720 /*offset_code (10800/15)*/,
26923  0 /*offset_remainder (10800%15)*/,
26924  0 /*delta_minutes*/,
26925  32767 /*until_year*/,
26926  1 /*until_month*/,
26927  1 /*until_day*/,
26928  0 /*until_time_code (0/15)*/,
26929  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26930  },
26931 
26932 };
26933 
26934 static const char kAtcZoneNameEurope_Kirov[] = "Europe/Kirov";
26935 
26936 const AtcZoneInfo kAtcAllZoneEurope_Kirov = {
26937  kAtcZoneNameEurope_Kirov /*name*/,
26938  0xfaf5abef /*zone_id*/,
26939  &kAtcAllZoneContext /*zone_context*/,
26940  8 /*num_eras*/,
26941  kAtcZoneEraEurope_Kirov /*eras*/,
26942  NULL /*target_info*/,
26943 };
26944 
26945 //---------------------------------------------------------------------------
26946 // Zone name: Europe/Kyiv
26947 // Zone Eras: 9
26948 //---------------------------------------------------------------------------
26949 
26950 static const AtcZoneEra kAtcZoneEraEurope_Kyiv[] = {
26951  // 2:02:04 - LMT 1880
26952  {
26953  NULL /*zone_policy*/,
26954  "LMT" /*format*/,
26955  488 /*offset_code (7324/15)*/,
26956  4 /*offset_remainder (7324%15)*/,
26957  0 /*delta_minutes*/,
26958  1880 /*until_year*/,
26959  1 /*until_month*/,
26960  1 /*until_day*/,
26961  0 /*until_time_code (0/15)*/,
26962  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26963  },
26964  // 2:02:04 - KMT 1924 May 2
26965  {
26966  NULL /*zone_policy*/,
26967  "KMT" /*format*/,
26968  488 /*offset_code (7324/15)*/,
26969  4 /*offset_remainder (7324%15)*/,
26970  0 /*delta_minutes*/,
26971  1924 /*until_year*/,
26972  5 /*until_month*/,
26973  2 /*until_day*/,
26974  0 /*until_time_code (0/15)*/,
26975  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26976  },
26977  // 2:00 - EET 1930 Jun 21
26978  {
26979  NULL /*zone_policy*/,
26980  "EET" /*format*/,
26981  480 /*offset_code (7200/15)*/,
26982  0 /*offset_remainder (7200%15)*/,
26983  0 /*delta_minutes*/,
26984  1930 /*until_year*/,
26985  6 /*until_month*/,
26986  21 /*until_day*/,
26987  0 /*until_time_code (0/15)*/,
26988  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
26989  },
26990  // 3:00 - MSK 1941 Sep 20
26991  {
26992  NULL /*zone_policy*/,
26993  "MSK" /*format*/,
26994  720 /*offset_code (10800/15)*/,
26995  0 /*offset_remainder (10800%15)*/,
26996  0 /*delta_minutes*/,
26997  1941 /*until_year*/,
26998  9 /*until_month*/,
26999  20 /*until_day*/,
27000  0 /*until_time_code (0/15)*/,
27001  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27002  },
27003  // 1:00 C-Eur CE%sT 1943 Nov 6
27004  {
27005  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
27006  "CE%T" /*format*/,
27007  240 /*offset_code (3600/15)*/,
27008  0 /*offset_remainder (3600%15)*/,
27009  0 /*delta_minutes*/,
27010  1943 /*until_year*/,
27011  11 /*until_month*/,
27012  6 /*until_day*/,
27013  0 /*until_time_code (0/15)*/,
27014  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27015  },
27016  // 3:00 Russia MSK/MSD 1990 Jul 1 2:00
27017  {
27018  &kAtcAllZonePolicyRussia /*zone_policy*/,
27019  "MSK/MSD" /*format*/,
27020  720 /*offset_code (10800/15)*/,
27021  0 /*offset_remainder (10800%15)*/,
27022  0 /*delta_minutes*/,
27023  1990 /*until_year*/,
27024  7 /*until_month*/,
27025  1 /*until_day*/,
27026  480 /*until_time_code (7200/15)*/,
27027  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27028  },
27029  // 2:00 1:00 EEST 1991 Sep 29 3:00
27030  {
27031  NULL /*zone_policy*/,
27032  "EEST" /*format*/,
27033  480 /*offset_code (7200/15)*/,
27034  0 /*offset_remainder (7200%15)*/,
27035  60 /*delta_minutes*/,
27036  1991 /*until_year*/,
27037  9 /*until_month*/,
27038  29 /*until_day*/,
27039  720 /*until_time_code (10800/15)*/,
27040  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27041  },
27042  // 2:00 C-Eur EE%sT 1996 May 13
27043  {
27044  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
27045  "EE%T" /*format*/,
27046  480 /*offset_code (7200/15)*/,
27047  0 /*offset_remainder (7200%15)*/,
27048  0 /*delta_minutes*/,
27049  1996 /*until_year*/,
27050  5 /*until_month*/,
27051  13 /*until_day*/,
27052  0 /*until_time_code (0/15)*/,
27053  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27054  },
27055  // 2:00 EU EE%sT
27056  {
27057  &kAtcAllZonePolicyEU /*zone_policy*/,
27058  "EE%T" /*format*/,
27059  480 /*offset_code (7200/15)*/,
27060  0 /*offset_remainder (7200%15)*/,
27061  0 /*delta_minutes*/,
27062  32767 /*until_year*/,
27063  1 /*until_month*/,
27064  1 /*until_day*/,
27065  0 /*until_time_code (0/15)*/,
27066  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27067  },
27068 
27069 };
27070 
27071 static const char kAtcZoneNameEurope_Kyiv[] = "Europe/Kyiv";
27072 
27073 const AtcZoneInfo kAtcAllZoneEurope_Kyiv = {
27074  kAtcZoneNameEurope_Kyiv /*name*/,
27075  0xa2c1e347 /*zone_id*/,
27076  &kAtcAllZoneContext /*zone_context*/,
27077  9 /*num_eras*/,
27078  kAtcZoneEraEurope_Kyiv /*eras*/,
27079  NULL /*target_info*/,
27080 };
27081 
27082 //---------------------------------------------------------------------------
27083 // Zone name: Europe/Lisbon
27084 // Zone Eras: 8
27085 //---------------------------------------------------------------------------
27086 
27087 static const AtcZoneEra kAtcZoneEraEurope_Lisbon[] = {
27088  // -0:36:45 - LMT 1884
27089  {
27090  NULL /*zone_policy*/,
27091  "LMT" /*format*/,
27092  -147 /*offset_code (-2205/15)*/,
27093  0 /*offset_remainder (-2205%15)*/,
27094  0 /*delta_minutes*/,
27095  1884 /*until_year*/,
27096  1 /*until_month*/,
27097  1 /*until_day*/,
27098  0 /*until_time_code (0/15)*/,
27099  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27100  },
27101  // -0:36:45 - LMT 1912 Jan 1 0:00u
27102  {
27103  NULL /*zone_policy*/,
27104  "LMT" /*format*/,
27105  -147 /*offset_code (-2205/15)*/,
27106  0 /*offset_remainder (-2205%15)*/,
27107  0 /*delta_minutes*/,
27108  1912 /*until_year*/,
27109  1 /*until_month*/,
27110  1 /*until_day*/,
27111  0 /*until_time_code (0/15)*/,
27112  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
27113  },
27114  // 0:00 Port WE%sT 1966 Apr 3 2:00
27115  {
27116  &kAtcAllZonePolicyPort /*zone_policy*/,
27117  "WE%T" /*format*/,
27118  0 /*offset_code (0/15)*/,
27119  0 /*offset_remainder (0%15)*/,
27120  0 /*delta_minutes*/,
27121  1966 /*until_year*/,
27122  4 /*until_month*/,
27123  3 /*until_day*/,
27124  480 /*until_time_code (7200/15)*/,
27125  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27126  },
27127  // 1:00 - CET 1976 Sep 26 1:00
27128  {
27129  NULL /*zone_policy*/,
27130  "CET" /*format*/,
27131  240 /*offset_code (3600/15)*/,
27132  0 /*offset_remainder (3600%15)*/,
27133  0 /*delta_minutes*/,
27134  1976 /*until_year*/,
27135  9 /*until_month*/,
27136  26 /*until_day*/,
27137  240 /*until_time_code (3600/15)*/,
27138  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27139  },
27140  // 0:00 Port WE%sT 1983 Sep 25 1:00s
27141  {
27142  &kAtcAllZonePolicyPort /*zone_policy*/,
27143  "WE%T" /*format*/,
27144  0 /*offset_code (0/15)*/,
27145  0 /*offset_remainder (0%15)*/,
27146  0 /*delta_minutes*/,
27147  1983 /*until_year*/,
27148  9 /*until_month*/,
27149  25 /*until_day*/,
27150  240 /*until_time_code (3600/15)*/,
27151  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27152  },
27153  // 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
27154  {
27155  &kAtcAllZonePolicyW_Eur /*zone_policy*/,
27156  "WE%T" /*format*/,
27157  0 /*offset_code (0/15)*/,
27158  0 /*offset_remainder (0%15)*/,
27159  0 /*delta_minutes*/,
27160  1992 /*until_year*/,
27161  9 /*until_month*/,
27162  27 /*until_day*/,
27163  240 /*until_time_code (3600/15)*/,
27164  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27165  },
27166  // 1:00 EU CE%sT 1996 Mar 31 1:00u
27167  {
27168  &kAtcAllZonePolicyEU /*zone_policy*/,
27169  "CE%T" /*format*/,
27170  240 /*offset_code (3600/15)*/,
27171  0 /*offset_remainder (3600%15)*/,
27172  0 /*delta_minutes*/,
27173  1996 /*until_year*/,
27174  3 /*until_month*/,
27175  31 /*until_day*/,
27176  240 /*until_time_code (3600/15)*/,
27177  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
27178  },
27179  // 0:00 EU WE%sT
27180  {
27181  &kAtcAllZonePolicyEU /*zone_policy*/,
27182  "WE%T" /*format*/,
27183  0 /*offset_code (0/15)*/,
27184  0 /*offset_remainder (0%15)*/,
27185  0 /*delta_minutes*/,
27186  32767 /*until_year*/,
27187  1 /*until_month*/,
27188  1 /*until_day*/,
27189  0 /*until_time_code (0/15)*/,
27190  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27191  },
27192 
27193 };
27194 
27195 static const char kAtcZoneNameEurope_Lisbon[] = "Europe/Lisbon";
27196 
27197 const AtcZoneInfo kAtcAllZoneEurope_Lisbon = {
27198  kAtcZoneNameEurope_Lisbon /*name*/,
27199  0x5c00a70b /*zone_id*/,
27200  &kAtcAllZoneContext /*zone_context*/,
27201  8 /*num_eras*/,
27202  kAtcZoneEraEurope_Lisbon /*eras*/,
27203  NULL /*target_info*/,
27204 };
27205 
27206 //---------------------------------------------------------------------------
27207 // Zone name: Europe/London
27208 // Zone Eras: 5
27209 //---------------------------------------------------------------------------
27210 
27211 static const AtcZoneEra kAtcZoneEraEurope_London[] = {
27212  // -0:01:15 - LMT 1847 Dec 1
27213  {
27214  NULL /*zone_policy*/,
27215  "LMT" /*format*/,
27216  -5 /*offset_code (-75/15)*/,
27217  0 /*offset_remainder (-75%15)*/,
27218  0 /*delta_minutes*/,
27219  1847 /*until_year*/,
27220  12 /*until_month*/,
27221  1 /*until_day*/,
27222  0 /*until_time_code (0/15)*/,
27223  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27224  },
27225  // 0:00 GB-Eire %s 1968 Oct 27
27226  {
27227  &kAtcAllZonePolicyGB_Eire /*zone_policy*/,
27228  "%" /*format*/,
27229  0 /*offset_code (0/15)*/,
27230  0 /*offset_remainder (0%15)*/,
27231  0 /*delta_minutes*/,
27232  1968 /*until_year*/,
27233  10 /*until_month*/,
27234  27 /*until_day*/,
27235  0 /*until_time_code (0/15)*/,
27236  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27237  },
27238  // 1:00 - BST 1971 Oct 31 2:00u
27239  {
27240  NULL /*zone_policy*/,
27241  "BST" /*format*/,
27242  240 /*offset_code (3600/15)*/,
27243  0 /*offset_remainder (3600%15)*/,
27244  0 /*delta_minutes*/,
27245  1971 /*until_year*/,
27246  10 /*until_month*/,
27247  31 /*until_day*/,
27248  480 /*until_time_code (7200/15)*/,
27249  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
27250  },
27251  // 0:00 GB-Eire %s 1996
27252  {
27253  &kAtcAllZonePolicyGB_Eire /*zone_policy*/,
27254  "%" /*format*/,
27255  0 /*offset_code (0/15)*/,
27256  0 /*offset_remainder (0%15)*/,
27257  0 /*delta_minutes*/,
27258  1996 /*until_year*/,
27259  1 /*until_month*/,
27260  1 /*until_day*/,
27261  0 /*until_time_code (0/15)*/,
27262  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27263  },
27264  // 0:00 EU GMT/BST
27265  {
27266  &kAtcAllZonePolicyEU /*zone_policy*/,
27267  "GMT/BST" /*format*/,
27268  0 /*offset_code (0/15)*/,
27269  0 /*offset_remainder (0%15)*/,
27270  0 /*delta_minutes*/,
27271  32767 /*until_year*/,
27272  1 /*until_month*/,
27273  1 /*until_day*/,
27274  0 /*until_time_code (0/15)*/,
27275  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27276  },
27277 
27278 };
27279 
27280 static const char kAtcZoneNameEurope_London[] = "Europe/London";
27281 
27282 const AtcZoneInfo kAtcAllZoneEurope_London = {
27283  kAtcZoneNameEurope_London /*name*/,
27284  0x5c6a84ae /*zone_id*/,
27285  &kAtcAllZoneContext /*zone_context*/,
27286  5 /*num_eras*/,
27287  kAtcZoneEraEurope_London /*eras*/,
27288  NULL /*target_info*/,
27289 };
27290 
27291 //---------------------------------------------------------------------------
27292 // Zone name: Europe/Madrid
27293 // Zone Eras: 4
27294 //---------------------------------------------------------------------------
27295 
27296 static const AtcZoneEra kAtcZoneEraEurope_Madrid[] = {
27297  // -0:14:44 - LMT 1901 Jan 1 0:00u
27298  {
27299  NULL /*zone_policy*/,
27300  "LMT" /*format*/,
27301  -59 /*offset_code (-884/15)*/,
27302  1 /*offset_remainder (-884%15)*/,
27303  0 /*delta_minutes*/,
27304  1901 /*until_year*/,
27305  1 /*until_month*/,
27306  1 /*until_day*/,
27307  0 /*until_time_code (0/15)*/,
27308  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
27309  },
27310  // 0:00 Spain WE%sT 1940 Mar 16 23:00
27311  {
27312  &kAtcAllZonePolicySpain /*zone_policy*/,
27313  "WE%T" /*format*/,
27314  0 /*offset_code (0/15)*/,
27315  0 /*offset_remainder (0%15)*/,
27316  0 /*delta_minutes*/,
27317  1940 /*until_year*/,
27318  3 /*until_month*/,
27319  16 /*until_day*/,
27320  5520 /*until_time_code (82800/15)*/,
27321  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27322  },
27323  // 1:00 Spain CE%sT 1979
27324  {
27325  &kAtcAllZonePolicySpain /*zone_policy*/,
27326  "CE%T" /*format*/,
27327  240 /*offset_code (3600/15)*/,
27328  0 /*offset_remainder (3600%15)*/,
27329  0 /*delta_minutes*/,
27330  1979 /*until_year*/,
27331  1 /*until_month*/,
27332  1 /*until_day*/,
27333  0 /*until_time_code (0/15)*/,
27334  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27335  },
27336  // 1:00 EU CE%sT
27337  {
27338  &kAtcAllZonePolicyEU /*zone_policy*/,
27339  "CE%T" /*format*/,
27340  240 /*offset_code (3600/15)*/,
27341  0 /*offset_remainder (3600%15)*/,
27342  0 /*delta_minutes*/,
27343  32767 /*until_year*/,
27344  1 /*until_month*/,
27345  1 /*until_day*/,
27346  0 /*until_time_code (0/15)*/,
27347  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27348  },
27349 
27350 };
27351 
27352 static const char kAtcZoneNameEurope_Madrid[] = "Europe/Madrid";
27353 
27354 const AtcZoneInfo kAtcAllZoneEurope_Madrid = {
27355  kAtcZoneNameEurope_Madrid /*name*/,
27356  0x5dbd1535 /*zone_id*/,
27357  &kAtcAllZoneContext /*zone_context*/,
27358  4 /*num_eras*/,
27359  kAtcZoneEraEurope_Madrid /*eras*/,
27360  NULL /*target_info*/,
27361 };
27362 
27363 //---------------------------------------------------------------------------
27364 // Zone name: Europe/Malta
27365 // Zone Eras: 4
27366 //---------------------------------------------------------------------------
27367 
27368 static const AtcZoneEra kAtcZoneEraEurope_Malta[] = {
27369  // 0:58:04 - LMT 1893 Nov 2
27370  {
27371  NULL /*zone_policy*/,
27372  "LMT" /*format*/,
27373  232 /*offset_code (3484/15)*/,
27374  4 /*offset_remainder (3484%15)*/,
27375  0 /*delta_minutes*/,
27376  1893 /*until_year*/,
27377  11 /*until_month*/,
27378  2 /*until_day*/,
27379  0 /*until_time_code (0/15)*/,
27380  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27381  },
27382  // 1:00 Italy CE%sT 1973 Mar 31
27383  {
27384  &kAtcAllZonePolicyItaly /*zone_policy*/,
27385  "CE%T" /*format*/,
27386  240 /*offset_code (3600/15)*/,
27387  0 /*offset_remainder (3600%15)*/,
27388  0 /*delta_minutes*/,
27389  1973 /*until_year*/,
27390  3 /*until_month*/,
27391  31 /*until_day*/,
27392  0 /*until_time_code (0/15)*/,
27393  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27394  },
27395  // 1:00 Malta CE%sT 1981
27396  {
27397  &kAtcAllZonePolicyMalta /*zone_policy*/,
27398  "CE%T" /*format*/,
27399  240 /*offset_code (3600/15)*/,
27400  0 /*offset_remainder (3600%15)*/,
27401  0 /*delta_minutes*/,
27402  1981 /*until_year*/,
27403  1 /*until_month*/,
27404  1 /*until_day*/,
27405  0 /*until_time_code (0/15)*/,
27406  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27407  },
27408  // 1:00 EU CE%sT
27409  {
27410  &kAtcAllZonePolicyEU /*zone_policy*/,
27411  "CE%T" /*format*/,
27412  240 /*offset_code (3600/15)*/,
27413  0 /*offset_remainder (3600%15)*/,
27414  0 /*delta_minutes*/,
27415  32767 /*until_year*/,
27416  1 /*until_month*/,
27417  1 /*until_day*/,
27418  0 /*until_time_code (0/15)*/,
27419  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27420  },
27421 
27422 };
27423 
27424 static const char kAtcZoneNameEurope_Malta[] = "Europe/Malta";
27425 
27426 const AtcZoneInfo kAtcAllZoneEurope_Malta = {
27427  kAtcZoneNameEurope_Malta /*name*/,
27428  0xfb1560f3 /*zone_id*/,
27429  &kAtcAllZoneContext /*zone_context*/,
27430  4 /*num_eras*/,
27431  kAtcZoneEraEurope_Malta /*eras*/,
27432  NULL /*target_info*/,
27433 };
27434 
27435 //---------------------------------------------------------------------------
27436 // Zone name: Europe/Minsk
27437 // Zone Eras: 9
27438 //---------------------------------------------------------------------------
27439 
27440 static const AtcZoneEra kAtcZoneEraEurope_Minsk[] = {
27441  // 1:50:16 - LMT 1880
27442  {
27443  NULL /*zone_policy*/,
27444  "LMT" /*format*/,
27445  441 /*offset_code (6616/15)*/,
27446  1 /*offset_remainder (6616%15)*/,
27447  0 /*delta_minutes*/,
27448  1880 /*until_year*/,
27449  1 /*until_month*/,
27450  1 /*until_day*/,
27451  0 /*until_time_code (0/15)*/,
27452  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27453  },
27454  // 1:50 - MMT 1924 May 2
27455  {
27456  NULL /*zone_policy*/,
27457  "MMT" /*format*/,
27458  440 /*offset_code (6600/15)*/,
27459  0 /*offset_remainder (6600%15)*/,
27460  0 /*delta_minutes*/,
27461  1924 /*until_year*/,
27462  5 /*until_month*/,
27463  2 /*until_day*/,
27464  0 /*until_time_code (0/15)*/,
27465  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27466  },
27467  // 2:00 - EET 1930 Jun 21
27468  {
27469  NULL /*zone_policy*/,
27470  "EET" /*format*/,
27471  480 /*offset_code (7200/15)*/,
27472  0 /*offset_remainder (7200%15)*/,
27473  0 /*delta_minutes*/,
27474  1930 /*until_year*/,
27475  6 /*until_month*/,
27476  21 /*until_day*/,
27477  0 /*until_time_code (0/15)*/,
27478  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27479  },
27480  // 3:00 - MSK 1941 Jun 28
27481  {
27482  NULL /*zone_policy*/,
27483  "MSK" /*format*/,
27484  720 /*offset_code (10800/15)*/,
27485  0 /*offset_remainder (10800%15)*/,
27486  0 /*delta_minutes*/,
27487  1941 /*until_year*/,
27488  6 /*until_month*/,
27489  28 /*until_day*/,
27490  0 /*until_time_code (0/15)*/,
27491  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27492  },
27493  // 1:00 C-Eur CE%sT 1944 Jul 3
27494  {
27495  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
27496  "CE%T" /*format*/,
27497  240 /*offset_code (3600/15)*/,
27498  0 /*offset_remainder (3600%15)*/,
27499  0 /*delta_minutes*/,
27500  1944 /*until_year*/,
27501  7 /*until_month*/,
27502  3 /*until_day*/,
27503  0 /*until_time_code (0/15)*/,
27504  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27505  },
27506  // 3:00 Russia MSK/MSD 1990
27507  {
27508  &kAtcAllZonePolicyRussia /*zone_policy*/,
27509  "MSK/MSD" /*format*/,
27510  720 /*offset_code (10800/15)*/,
27511  0 /*offset_remainder (10800%15)*/,
27512  0 /*delta_minutes*/,
27513  1990 /*until_year*/,
27514  1 /*until_month*/,
27515  1 /*until_day*/,
27516  0 /*until_time_code (0/15)*/,
27517  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27518  },
27519  // 3:00 - MSK 1991 Mar 31 2:00s
27520  {
27521  NULL /*zone_policy*/,
27522  "MSK" /*format*/,
27523  720 /*offset_code (10800/15)*/,
27524  0 /*offset_remainder (10800%15)*/,
27525  0 /*delta_minutes*/,
27526  1991 /*until_year*/,
27527  3 /*until_month*/,
27528  31 /*until_day*/,
27529  480 /*until_time_code (7200/15)*/,
27530  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27531  },
27532  // 2:00 Russia EE%sT 2011 Mar 27 2:00s
27533  {
27534  &kAtcAllZonePolicyRussia /*zone_policy*/,
27535  "EE%T" /*format*/,
27536  480 /*offset_code (7200/15)*/,
27537  0 /*offset_remainder (7200%15)*/,
27538  0 /*delta_minutes*/,
27539  2011 /*until_year*/,
27540  3 /*until_month*/,
27541  27 /*until_day*/,
27542  480 /*until_time_code (7200/15)*/,
27543  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27544  },
27545  // 3:00 - +03
27546  {
27547  NULL /*zone_policy*/,
27548  "+03" /*format*/,
27549  720 /*offset_code (10800/15)*/,
27550  0 /*offset_remainder (10800%15)*/,
27551  0 /*delta_minutes*/,
27552  32767 /*until_year*/,
27553  1 /*until_month*/,
27554  1 /*until_day*/,
27555  0 /*until_time_code (0/15)*/,
27556  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27557  },
27558 
27559 };
27560 
27561 static const char kAtcZoneNameEurope_Minsk[] = "Europe/Minsk";
27562 
27563 const AtcZoneInfo kAtcAllZoneEurope_Minsk = {
27564  kAtcZoneNameEurope_Minsk /*name*/,
27565  0xfb19cc66 /*zone_id*/,
27566  &kAtcAllZoneContext /*zone_context*/,
27567  9 /*num_eras*/,
27568  kAtcZoneEraEurope_Minsk /*eras*/,
27569  NULL /*target_info*/,
27570 };
27571 
27572 //---------------------------------------------------------------------------
27573 // Zone name: Europe/Moscow
27574 // Zone Eras: 11
27575 //---------------------------------------------------------------------------
27576 
27577 static const AtcZoneEra kAtcZoneEraEurope_Moscow[] = {
27578  // 2:30:17 - LMT 1880
27579  {
27580  NULL /*zone_policy*/,
27581  "LMT" /*format*/,
27582  601 /*offset_code (9017/15)*/,
27583  2 /*offset_remainder (9017%15)*/,
27584  0 /*delta_minutes*/,
27585  1880 /*until_year*/,
27586  1 /*until_month*/,
27587  1 /*until_day*/,
27588  0 /*until_time_code (0/15)*/,
27589  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27590  },
27591  // 2:30:17 - MMT 1916 Jul 3
27592  {
27593  NULL /*zone_policy*/,
27594  "MMT" /*format*/,
27595  601 /*offset_code (9017/15)*/,
27596  2 /*offset_remainder (9017%15)*/,
27597  0 /*delta_minutes*/,
27598  1916 /*until_year*/,
27599  7 /*until_month*/,
27600  3 /*until_day*/,
27601  0 /*until_time_code (0/15)*/,
27602  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27603  },
27604  // 2:31:19 Russia %s 1919 Jul 1 0:00u
27605  {
27606  &kAtcAllZonePolicyRussia /*zone_policy*/,
27607  "%" /*format*/,
27608  605 /*offset_code (9079/15)*/,
27609  4 /*offset_remainder (9079%15)*/,
27610  0 /*delta_minutes*/,
27611  1919 /*until_year*/,
27612  7 /*until_month*/,
27613  1 /*until_day*/,
27614  0 /*until_time_code (0/15)*/,
27615  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
27616  },
27617  // 3:00 Russia %s 1921 Oct
27618  {
27619  &kAtcAllZonePolicyRussia /*zone_policy*/,
27620  "%" /*format*/,
27621  720 /*offset_code (10800/15)*/,
27622  0 /*offset_remainder (10800%15)*/,
27623  0 /*delta_minutes*/,
27624  1921 /*until_year*/,
27625  10 /*until_month*/,
27626  1 /*until_day*/,
27627  0 /*until_time_code (0/15)*/,
27628  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27629  },
27630  // 3:00 Russia MSK/MSD 1922 Oct
27631  {
27632  &kAtcAllZonePolicyRussia /*zone_policy*/,
27633  "MSK/MSD" /*format*/,
27634  720 /*offset_code (10800/15)*/,
27635  0 /*offset_remainder (10800%15)*/,
27636  0 /*delta_minutes*/,
27637  1922 /*until_year*/,
27638  10 /*until_month*/,
27639  1 /*until_day*/,
27640  0 /*until_time_code (0/15)*/,
27641  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27642  },
27643  // 2:00 - EET 1930 Jun 21
27644  {
27645  NULL /*zone_policy*/,
27646  "EET" /*format*/,
27647  480 /*offset_code (7200/15)*/,
27648  0 /*offset_remainder (7200%15)*/,
27649  0 /*delta_minutes*/,
27650  1930 /*until_year*/,
27651  6 /*until_month*/,
27652  21 /*until_day*/,
27653  0 /*until_time_code (0/15)*/,
27654  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27655  },
27656  // 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
27657  {
27658  &kAtcAllZonePolicyRussia /*zone_policy*/,
27659  "MSK/MSD" /*format*/,
27660  720 /*offset_code (10800/15)*/,
27661  0 /*offset_remainder (10800%15)*/,
27662  0 /*delta_minutes*/,
27663  1991 /*until_year*/,
27664  3 /*until_month*/,
27665  31 /*until_day*/,
27666  480 /*until_time_code (7200/15)*/,
27667  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27668  },
27669  // 2:00 Russia EE%sT 1992 Jan 19 2:00s
27670  {
27671  &kAtcAllZonePolicyRussia /*zone_policy*/,
27672  "EE%T" /*format*/,
27673  480 /*offset_code (7200/15)*/,
27674  0 /*offset_remainder (7200%15)*/,
27675  0 /*delta_minutes*/,
27676  1992 /*until_year*/,
27677  1 /*until_month*/,
27678  19 /*until_day*/,
27679  480 /*until_time_code (7200/15)*/,
27680  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27681  },
27682  // 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
27683  {
27684  &kAtcAllZonePolicyRussia /*zone_policy*/,
27685  "MSK/MSD" /*format*/,
27686  720 /*offset_code (10800/15)*/,
27687  0 /*offset_remainder (10800%15)*/,
27688  0 /*delta_minutes*/,
27689  2011 /*until_year*/,
27690  3 /*until_month*/,
27691  27 /*until_day*/,
27692  480 /*until_time_code (7200/15)*/,
27693  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27694  },
27695  // 4:00 - MSK 2014 Oct 26 2:00s
27696  {
27697  NULL /*zone_policy*/,
27698  "MSK" /*format*/,
27699  960 /*offset_code (14400/15)*/,
27700  0 /*offset_remainder (14400%15)*/,
27701  0 /*delta_minutes*/,
27702  2014 /*until_year*/,
27703  10 /*until_month*/,
27704  26 /*until_day*/,
27705  480 /*until_time_code (7200/15)*/,
27706  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
27707  },
27708  // 3:00 - MSK
27709  {
27710  NULL /*zone_policy*/,
27711  "MSK" /*format*/,
27712  720 /*offset_code (10800/15)*/,
27713  0 /*offset_remainder (10800%15)*/,
27714  0 /*delta_minutes*/,
27715  32767 /*until_year*/,
27716  1 /*until_month*/,
27717  1 /*until_day*/,
27718  0 /*until_time_code (0/15)*/,
27719  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27720  },
27721 
27722 };
27723 
27724 static const char kAtcZoneNameEurope_Moscow[] = "Europe/Moscow";
27725 
27726 const AtcZoneInfo kAtcAllZoneEurope_Moscow = {
27727  kAtcZoneNameEurope_Moscow /*name*/,
27728  0x5ec266fc /*zone_id*/,
27729  &kAtcAllZoneContext /*zone_context*/,
27730  11 /*num_eras*/,
27731  kAtcZoneEraEurope_Moscow /*eras*/,
27732  NULL /*target_info*/,
27733 };
27734 
27735 //---------------------------------------------------------------------------
27736 // Zone name: Europe/Paris
27737 // Zone Eras: 7
27738 //---------------------------------------------------------------------------
27739 
27740 static const AtcZoneEra kAtcZoneEraEurope_Paris[] = {
27741  // 0:09:21 - LMT 1891 Mar 16
27742  {
27743  NULL /*zone_policy*/,
27744  "LMT" /*format*/,
27745  37 /*offset_code (561/15)*/,
27746  6 /*offset_remainder (561%15)*/,
27747  0 /*delta_minutes*/,
27748  1891 /*until_year*/,
27749  3 /*until_month*/,
27750  16 /*until_day*/,
27751  0 /*until_time_code (0/15)*/,
27752  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27753  },
27754  // 0:09:21 - PMT 1911 Mar 11
27755  {
27756  NULL /*zone_policy*/,
27757  "PMT" /*format*/,
27758  37 /*offset_code (561/15)*/,
27759  6 /*offset_remainder (561%15)*/,
27760  0 /*delta_minutes*/,
27761  1911 /*until_year*/,
27762  3 /*until_month*/,
27763  11 /*until_day*/,
27764  0 /*until_time_code (0/15)*/,
27765  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27766  },
27767  // 0:00 France WE%sT 1940 Jun 14 23:00
27768  {
27769  &kAtcAllZonePolicyFrance /*zone_policy*/,
27770  "WE%T" /*format*/,
27771  0 /*offset_code (0/15)*/,
27772  0 /*offset_remainder (0%15)*/,
27773  0 /*delta_minutes*/,
27774  1940 /*until_year*/,
27775  6 /*until_month*/,
27776  14 /*until_day*/,
27777  5520 /*until_time_code (82800/15)*/,
27778  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27779  },
27780  // 1:00 C-Eur CE%sT 1944 Aug 25
27781  {
27782  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
27783  "CE%T" /*format*/,
27784  240 /*offset_code (3600/15)*/,
27785  0 /*offset_remainder (3600%15)*/,
27786  0 /*delta_minutes*/,
27787  1944 /*until_year*/,
27788  8 /*until_month*/,
27789  25 /*until_day*/,
27790  0 /*until_time_code (0/15)*/,
27791  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27792  },
27793  // 0:00 France WE%sT 1945 Sep 16 3:00
27794  {
27795  &kAtcAllZonePolicyFrance /*zone_policy*/,
27796  "WE%T" /*format*/,
27797  0 /*offset_code (0/15)*/,
27798  0 /*offset_remainder (0%15)*/,
27799  0 /*delta_minutes*/,
27800  1945 /*until_year*/,
27801  9 /*until_month*/,
27802  16 /*until_day*/,
27803  720 /*until_time_code (10800/15)*/,
27804  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27805  },
27806  // 1:00 France CE%sT 1977
27807  {
27808  &kAtcAllZonePolicyFrance /*zone_policy*/,
27809  "CE%T" /*format*/,
27810  240 /*offset_code (3600/15)*/,
27811  0 /*offset_remainder (3600%15)*/,
27812  0 /*delta_minutes*/,
27813  1977 /*until_year*/,
27814  1 /*until_month*/,
27815  1 /*until_day*/,
27816  0 /*until_time_code (0/15)*/,
27817  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27818  },
27819  // 1:00 EU CE%sT
27820  {
27821  &kAtcAllZonePolicyEU /*zone_policy*/,
27822  "CE%T" /*format*/,
27823  240 /*offset_code (3600/15)*/,
27824  0 /*offset_remainder (3600%15)*/,
27825  0 /*delta_minutes*/,
27826  32767 /*until_year*/,
27827  1 /*until_month*/,
27828  1 /*until_day*/,
27829  0 /*until_time_code (0/15)*/,
27830  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27831  },
27832 
27833 };
27834 
27835 static const char kAtcZoneNameEurope_Paris[] = "Europe/Paris";
27836 
27837 const AtcZoneInfo kAtcAllZoneEurope_Paris = {
27838  kAtcZoneNameEurope_Paris /*name*/,
27839  0xfb4bc2a3 /*zone_id*/,
27840  &kAtcAllZoneContext /*zone_context*/,
27841  7 /*num_eras*/,
27842  kAtcZoneEraEurope_Paris /*eras*/,
27843  NULL /*target_info*/,
27844 };
27845 
27846 //---------------------------------------------------------------------------
27847 // Zone name: Europe/Prague
27848 // Zone Eras: 7
27849 //---------------------------------------------------------------------------
27850 
27851 static const AtcZoneEra kAtcZoneEraEurope_Prague[] = {
27852  // 0:57:44 - LMT 1850
27853  {
27854  NULL /*zone_policy*/,
27855  "LMT" /*format*/,
27856  230 /*offset_code (3464/15)*/,
27857  14 /*offset_remainder (3464%15)*/,
27858  0 /*delta_minutes*/,
27859  1850 /*until_year*/,
27860  1 /*until_month*/,
27861  1 /*until_day*/,
27862  0 /*until_time_code (0/15)*/,
27863  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27864  },
27865  // 0:57:44 - PMT 1891 Oct
27866  {
27867  NULL /*zone_policy*/,
27868  "PMT" /*format*/,
27869  230 /*offset_code (3464/15)*/,
27870  14 /*offset_remainder (3464%15)*/,
27871  0 /*delta_minutes*/,
27872  1891 /*until_year*/,
27873  10 /*until_month*/,
27874  1 /*until_day*/,
27875  0 /*until_time_code (0/15)*/,
27876  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27877  },
27878  // 1:00 C-Eur CE%sT 1945 May 9
27879  {
27880  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
27881  "CE%T" /*format*/,
27882  240 /*offset_code (3600/15)*/,
27883  0 /*offset_remainder (3600%15)*/,
27884  0 /*delta_minutes*/,
27885  1945 /*until_year*/,
27886  5 /*until_month*/,
27887  9 /*until_day*/,
27888  0 /*until_time_code (0/15)*/,
27889  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27890  },
27891  // 1:00 Czech CE%sT 1946 Dec 1 3:00
27892  {
27893  &kAtcAllZonePolicyCzech /*zone_policy*/,
27894  "CE%T" /*format*/,
27895  240 /*offset_code (3600/15)*/,
27896  0 /*offset_remainder (3600%15)*/,
27897  0 /*delta_minutes*/,
27898  1946 /*until_year*/,
27899  12 /*until_month*/,
27900  1 /*until_day*/,
27901  720 /*until_time_code (10800/15)*/,
27902  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27903  },
27904  // 1:00 -1:00 GMT 1947 Feb 23 2:00
27905  {
27906  NULL /*zone_policy*/,
27907  "GMT" /*format*/,
27908  240 /*offset_code (3600/15)*/,
27909  0 /*offset_remainder (3600%15)*/,
27910  -60 /*delta_minutes*/,
27911  1947 /*until_year*/,
27912  2 /*until_month*/,
27913  23 /*until_day*/,
27914  480 /*until_time_code (7200/15)*/,
27915  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27916  },
27917  // 1:00 Czech CE%sT 1979
27918  {
27919  &kAtcAllZonePolicyCzech /*zone_policy*/,
27920  "CE%T" /*format*/,
27921  240 /*offset_code (3600/15)*/,
27922  0 /*offset_remainder (3600%15)*/,
27923  0 /*delta_minutes*/,
27924  1979 /*until_year*/,
27925  1 /*until_month*/,
27926  1 /*until_day*/,
27927  0 /*until_time_code (0/15)*/,
27928  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27929  },
27930  // 1:00 EU CE%sT
27931  {
27932  &kAtcAllZonePolicyEU /*zone_policy*/,
27933  "CE%T" /*format*/,
27934  240 /*offset_code (3600/15)*/,
27935  0 /*offset_remainder (3600%15)*/,
27936  0 /*delta_minutes*/,
27937  32767 /*until_year*/,
27938  1 /*until_month*/,
27939  1 /*until_day*/,
27940  0 /*until_time_code (0/15)*/,
27941  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27942  },
27943 
27944 };
27945 
27946 static const char kAtcZoneNameEurope_Prague[] = "Europe/Prague";
27947 
27948 const AtcZoneInfo kAtcAllZoneEurope_Prague = {
27949  kAtcZoneNameEurope_Prague /*name*/,
27950  0x65ee5d48 /*zone_id*/,
27951  &kAtcAllZoneContext /*zone_context*/,
27952  7 /*num_eras*/,
27953  kAtcZoneEraEurope_Prague /*eras*/,
27954  NULL /*target_info*/,
27955 };
27956 
27957 //---------------------------------------------------------------------------
27958 // Zone name: Europe/Riga
27959 // Zone Eras: 15
27960 //---------------------------------------------------------------------------
27961 
27962 static const AtcZoneEra kAtcZoneEraEurope_Riga[] = {
27963  // 1:36:34 - LMT 1880
27964  {
27965  NULL /*zone_policy*/,
27966  "LMT" /*format*/,
27967  386 /*offset_code (5794/15)*/,
27968  4 /*offset_remainder (5794%15)*/,
27969  0 /*delta_minutes*/,
27970  1880 /*until_year*/,
27971  1 /*until_month*/,
27972  1 /*until_day*/,
27973  0 /*until_time_code (0/15)*/,
27974  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27975  },
27976  // 1:36:34 - RMT 1918 Apr 15 2:00
27977  {
27978  NULL /*zone_policy*/,
27979  "RMT" /*format*/,
27980  386 /*offset_code (5794/15)*/,
27981  4 /*offset_remainder (5794%15)*/,
27982  0 /*delta_minutes*/,
27983  1918 /*until_year*/,
27984  4 /*until_month*/,
27985  15 /*until_day*/,
27986  480 /*until_time_code (7200/15)*/,
27987  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
27988  },
27989  // 1:36:34 1:00 LST 1918 Sep 16 3:00
27990  {
27991  NULL /*zone_policy*/,
27992  "LST" /*format*/,
27993  386 /*offset_code (5794/15)*/,
27994  4 /*offset_remainder (5794%15)*/,
27995  60 /*delta_minutes*/,
27996  1918 /*until_year*/,
27997  9 /*until_month*/,
27998  16 /*until_day*/,
27999  720 /*until_time_code (10800/15)*/,
28000  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28001  },
28002  // 1:36:34 - RMT 1919 Apr 1 2:00
28003  {
28004  NULL /*zone_policy*/,
28005  "RMT" /*format*/,
28006  386 /*offset_code (5794/15)*/,
28007  4 /*offset_remainder (5794%15)*/,
28008  0 /*delta_minutes*/,
28009  1919 /*until_year*/,
28010  4 /*until_month*/,
28011  1 /*until_day*/,
28012  480 /*until_time_code (7200/15)*/,
28013  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28014  },
28015  // 1:36:34 1:00 LST 1919 May 22 3:00
28016  {
28017  NULL /*zone_policy*/,
28018  "LST" /*format*/,
28019  386 /*offset_code (5794/15)*/,
28020  4 /*offset_remainder (5794%15)*/,
28021  60 /*delta_minutes*/,
28022  1919 /*until_year*/,
28023  5 /*until_month*/,
28024  22 /*until_day*/,
28025  720 /*until_time_code (10800/15)*/,
28026  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28027  },
28028  // 1:36:34 - RMT 1926 May 11
28029  {
28030  NULL /*zone_policy*/,
28031  "RMT" /*format*/,
28032  386 /*offset_code (5794/15)*/,
28033  4 /*offset_remainder (5794%15)*/,
28034  0 /*delta_minutes*/,
28035  1926 /*until_year*/,
28036  5 /*until_month*/,
28037  11 /*until_day*/,
28038  0 /*until_time_code (0/15)*/,
28039  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28040  },
28041  // 2:00 - EET 1940 Aug 5
28042  {
28043  NULL /*zone_policy*/,
28044  "EET" /*format*/,
28045  480 /*offset_code (7200/15)*/,
28046  0 /*offset_remainder (7200%15)*/,
28047  0 /*delta_minutes*/,
28048  1940 /*until_year*/,
28049  8 /*until_month*/,
28050  5 /*until_day*/,
28051  0 /*until_time_code (0/15)*/,
28052  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28053  },
28054  // 3:00 - MSK 1941 Jul
28055  {
28056  NULL /*zone_policy*/,
28057  "MSK" /*format*/,
28058  720 /*offset_code (10800/15)*/,
28059  0 /*offset_remainder (10800%15)*/,
28060  0 /*delta_minutes*/,
28061  1941 /*until_year*/,
28062  7 /*until_month*/,
28063  1 /*until_day*/,
28064  0 /*until_time_code (0/15)*/,
28065  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28066  },
28067  // 1:00 C-Eur CE%sT 1944 Oct 13
28068  {
28069  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28070  "CE%T" /*format*/,
28071  240 /*offset_code (3600/15)*/,
28072  0 /*offset_remainder (3600%15)*/,
28073  0 /*delta_minutes*/,
28074  1944 /*until_year*/,
28075  10 /*until_month*/,
28076  13 /*until_day*/,
28077  0 /*until_time_code (0/15)*/,
28078  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28079  },
28080  // 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
28081  {
28082  &kAtcAllZonePolicyRussia /*zone_policy*/,
28083  "MSK/MSD" /*format*/,
28084  720 /*offset_code (10800/15)*/,
28085  0 /*offset_remainder (10800%15)*/,
28086  0 /*delta_minutes*/,
28087  1989 /*until_year*/,
28088  3 /*until_month*/,
28089  26 /*until_day*/,
28090  480 /*until_time_code (7200/15)*/,
28091  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28092  },
28093  // 2:00 1:00 EEST 1989 Sep lastSun 2:00s
28094  {
28095  NULL /*zone_policy*/,
28096  "EEST" /*format*/,
28097  480 /*offset_code (7200/15)*/,
28098  0 /*offset_remainder (7200%15)*/,
28099  60 /*delta_minutes*/,
28100  1989 /*until_year*/,
28101  9 /*until_month*/,
28102  24 /*until_day*/,
28103  480 /*until_time_code (7200/15)*/,
28104  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28105  },
28106  // 2:00 Latvia EE%sT 1997 Jan 21
28107  {
28108  &kAtcAllZonePolicyLatvia /*zone_policy*/,
28109  "EE%T" /*format*/,
28110  480 /*offset_code (7200/15)*/,
28111  0 /*offset_remainder (7200%15)*/,
28112  0 /*delta_minutes*/,
28113  1997 /*until_year*/,
28114  1 /*until_month*/,
28115  21 /*until_day*/,
28116  0 /*until_time_code (0/15)*/,
28117  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28118  },
28119  // 2:00 EU EE%sT 2000 Feb 29
28120  {
28121  &kAtcAllZonePolicyEU /*zone_policy*/,
28122  "EE%T" /*format*/,
28123  480 /*offset_code (7200/15)*/,
28124  0 /*offset_remainder (7200%15)*/,
28125  0 /*delta_minutes*/,
28126  2000 /*until_year*/,
28127  2 /*until_month*/,
28128  29 /*until_day*/,
28129  0 /*until_time_code (0/15)*/,
28130  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28131  },
28132  // 2:00 - EET 2001 Jan 2
28133  {
28134  NULL /*zone_policy*/,
28135  "EET" /*format*/,
28136  480 /*offset_code (7200/15)*/,
28137  0 /*offset_remainder (7200%15)*/,
28138  0 /*delta_minutes*/,
28139  2001 /*until_year*/,
28140  1 /*until_month*/,
28141  2 /*until_day*/,
28142  0 /*until_time_code (0/15)*/,
28143  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28144  },
28145  // 2:00 EU EE%sT
28146  {
28147  &kAtcAllZonePolicyEU /*zone_policy*/,
28148  "EE%T" /*format*/,
28149  480 /*offset_code (7200/15)*/,
28150  0 /*offset_remainder (7200%15)*/,
28151  0 /*delta_minutes*/,
28152  32767 /*until_year*/,
28153  1 /*until_month*/,
28154  1 /*until_day*/,
28155  0 /*until_time_code (0/15)*/,
28156  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28157  },
28158 
28159 };
28160 
28161 static const char kAtcZoneNameEurope_Riga[] = "Europe/Riga";
28162 
28163 const AtcZoneInfo kAtcAllZoneEurope_Riga = {
28164  kAtcZoneNameEurope_Riga /*name*/,
28165  0xa2c57587 /*zone_id*/,
28166  &kAtcAllZoneContext /*zone_context*/,
28167  15 /*num_eras*/,
28168  kAtcZoneEraEurope_Riga /*eras*/,
28169  NULL /*target_info*/,
28170 };
28171 
28172 //---------------------------------------------------------------------------
28173 // Zone name: Europe/Rome
28174 // Zone Eras: 6
28175 //---------------------------------------------------------------------------
28176 
28177 static const AtcZoneEra kAtcZoneEraEurope_Rome[] = {
28178  // 0:49:56 - LMT 1866 Dec 12
28179  {
28180  NULL /*zone_policy*/,
28181  "LMT" /*format*/,
28182  199 /*offset_code (2996/15)*/,
28183  11 /*offset_remainder (2996%15)*/,
28184  0 /*delta_minutes*/,
28185  1866 /*until_year*/,
28186  12 /*until_month*/,
28187  12 /*until_day*/,
28188  0 /*until_time_code (0/15)*/,
28189  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28190  },
28191  // 0:49:56 - RMT 1893 Oct 31 23:00u
28192  {
28193  NULL /*zone_policy*/,
28194  "RMT" /*format*/,
28195  199 /*offset_code (2996/15)*/,
28196  11 /*offset_remainder (2996%15)*/,
28197  0 /*delta_minutes*/,
28198  1893 /*until_year*/,
28199  10 /*until_month*/,
28200  31 /*until_day*/,
28201  5520 /*until_time_code (82800/15)*/,
28202  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
28203  },
28204  // 1:00 Italy CE%sT 1943 Sep 10
28205  {
28206  &kAtcAllZonePolicyItaly /*zone_policy*/,
28207  "CE%T" /*format*/,
28208  240 /*offset_code (3600/15)*/,
28209  0 /*offset_remainder (3600%15)*/,
28210  0 /*delta_minutes*/,
28211  1943 /*until_year*/,
28212  9 /*until_month*/,
28213  10 /*until_day*/,
28214  0 /*until_time_code (0/15)*/,
28215  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28216  },
28217  // 1:00 C-Eur CE%sT 1944 Jun 4
28218  {
28219  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28220  "CE%T" /*format*/,
28221  240 /*offset_code (3600/15)*/,
28222  0 /*offset_remainder (3600%15)*/,
28223  0 /*delta_minutes*/,
28224  1944 /*until_year*/,
28225  6 /*until_month*/,
28226  4 /*until_day*/,
28227  0 /*until_time_code (0/15)*/,
28228  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28229  },
28230  // 1:00 Italy CE%sT 1980
28231  {
28232  &kAtcAllZonePolicyItaly /*zone_policy*/,
28233  "CE%T" /*format*/,
28234  240 /*offset_code (3600/15)*/,
28235  0 /*offset_remainder (3600%15)*/,
28236  0 /*delta_minutes*/,
28237  1980 /*until_year*/,
28238  1 /*until_month*/,
28239  1 /*until_day*/,
28240  0 /*until_time_code (0/15)*/,
28241  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28242  },
28243  // 1:00 EU CE%sT
28244  {
28245  &kAtcAllZonePolicyEU /*zone_policy*/,
28246  "CE%T" /*format*/,
28247  240 /*offset_code (3600/15)*/,
28248  0 /*offset_remainder (3600%15)*/,
28249  0 /*delta_minutes*/,
28250  32767 /*until_year*/,
28251  1 /*until_month*/,
28252  1 /*until_day*/,
28253  0 /*until_time_code (0/15)*/,
28254  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28255  },
28256 
28257 };
28258 
28259 static const char kAtcZoneNameEurope_Rome[] = "Europe/Rome";
28260 
28261 const AtcZoneInfo kAtcAllZoneEurope_Rome = {
28262  kAtcZoneNameEurope_Rome /*name*/,
28263  0xa2c58fd7 /*zone_id*/,
28264  &kAtcAllZoneContext /*zone_context*/,
28265  6 /*num_eras*/,
28266  kAtcZoneEraEurope_Rome /*eras*/,
28267  NULL /*target_info*/,
28268 };
28269 
28270 //---------------------------------------------------------------------------
28271 // Zone name: Europe/Samara
28272 // Zone Eras: 10
28273 //---------------------------------------------------------------------------
28274 
28275 static const AtcZoneEra kAtcZoneEraEurope_Samara[] = {
28276  // 3:20:20 - LMT 1919 Jul 1 0:00u
28277  {
28278  NULL /*zone_policy*/,
28279  "LMT" /*format*/,
28280  801 /*offset_code (12020/15)*/,
28281  5 /*offset_remainder (12020%15)*/,
28282  0 /*delta_minutes*/,
28283  1919 /*until_year*/,
28284  7 /*until_month*/,
28285  1 /*until_day*/,
28286  0 /*until_time_code (0/15)*/,
28287  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
28288  },
28289  // 3:00 - +03 1930 Jun 21
28290  {
28291  NULL /*zone_policy*/,
28292  "+03" /*format*/,
28293  720 /*offset_code (10800/15)*/,
28294  0 /*offset_remainder (10800%15)*/,
28295  0 /*delta_minutes*/,
28296  1930 /*until_year*/,
28297  6 /*until_month*/,
28298  21 /*until_day*/,
28299  0 /*until_time_code (0/15)*/,
28300  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28301  },
28302  // 4:00 - +04 1935 Jan 27
28303  {
28304  NULL /*zone_policy*/,
28305  "+04" /*format*/,
28306  960 /*offset_code (14400/15)*/,
28307  0 /*offset_remainder (14400%15)*/,
28308  0 /*delta_minutes*/,
28309  1935 /*until_year*/,
28310  1 /*until_month*/,
28311  27 /*until_day*/,
28312  0 /*until_time_code (0/15)*/,
28313  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28314  },
28315  // 4:00 Russia +04/+05 1989 Mar 26 2:00s
28316  {
28317  &kAtcAllZonePolicyRussia /*zone_policy*/,
28318  "+04/+05" /*format*/,
28319  960 /*offset_code (14400/15)*/,
28320  0 /*offset_remainder (14400%15)*/,
28321  0 /*delta_minutes*/,
28322  1989 /*until_year*/,
28323  3 /*until_month*/,
28324  26 /*until_day*/,
28325  480 /*until_time_code (7200/15)*/,
28326  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28327  },
28328  // 3:00 Russia +03/+04 1991 Mar 31 2:00s
28329  {
28330  &kAtcAllZonePolicyRussia /*zone_policy*/,
28331  "+03/+04" /*format*/,
28332  720 /*offset_code (10800/15)*/,
28333  0 /*offset_remainder (10800%15)*/,
28334  0 /*delta_minutes*/,
28335  1991 /*until_year*/,
28336  3 /*until_month*/,
28337  31 /*until_day*/,
28338  480 /*until_time_code (7200/15)*/,
28339  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28340  },
28341  // 2:00 Russia +02/+03 1991 Sep 29 2:00s
28342  {
28343  &kAtcAllZonePolicyRussia /*zone_policy*/,
28344  "+02/+03" /*format*/,
28345  480 /*offset_code (7200/15)*/,
28346  0 /*offset_remainder (7200%15)*/,
28347  0 /*delta_minutes*/,
28348  1991 /*until_year*/,
28349  9 /*until_month*/,
28350  29 /*until_day*/,
28351  480 /*until_time_code (7200/15)*/,
28352  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28353  },
28354  // 3:00 - +03 1991 Oct 20 3:00
28355  {
28356  NULL /*zone_policy*/,
28357  "+03" /*format*/,
28358  720 /*offset_code (10800/15)*/,
28359  0 /*offset_remainder (10800%15)*/,
28360  0 /*delta_minutes*/,
28361  1991 /*until_year*/,
28362  10 /*until_month*/,
28363  20 /*until_day*/,
28364  720 /*until_time_code (10800/15)*/,
28365  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28366  },
28367  // 4:00 Russia +04/+05 2010 Mar 28 2:00s
28368  {
28369  &kAtcAllZonePolicyRussia /*zone_policy*/,
28370  "+04/+05" /*format*/,
28371  960 /*offset_code (14400/15)*/,
28372  0 /*offset_remainder (14400%15)*/,
28373  0 /*delta_minutes*/,
28374  2010 /*until_year*/,
28375  3 /*until_month*/,
28376  28 /*until_day*/,
28377  480 /*until_time_code (7200/15)*/,
28378  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28379  },
28380  // 3:00 Russia +03/+04 2011 Mar 27 2:00s
28381  {
28382  &kAtcAllZonePolicyRussia /*zone_policy*/,
28383  "+03/+04" /*format*/,
28384  720 /*offset_code (10800/15)*/,
28385  0 /*offset_remainder (10800%15)*/,
28386  0 /*delta_minutes*/,
28387  2011 /*until_year*/,
28388  3 /*until_month*/,
28389  27 /*until_day*/,
28390  480 /*until_time_code (7200/15)*/,
28391  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28392  },
28393  // 4:00 - +04
28394  {
28395  NULL /*zone_policy*/,
28396  "+04" /*format*/,
28397  960 /*offset_code (14400/15)*/,
28398  0 /*offset_remainder (14400%15)*/,
28399  0 /*delta_minutes*/,
28400  32767 /*until_year*/,
28401  1 /*until_month*/,
28402  1 /*until_day*/,
28403  0 /*until_time_code (0/15)*/,
28404  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28405  },
28406 
28407 };
28408 
28409 static const char kAtcZoneNameEurope_Samara[] = "Europe/Samara";
28410 
28411 const AtcZoneInfo kAtcAllZoneEurope_Samara = {
28412  kAtcZoneNameEurope_Samara /*name*/,
28413  0x6bc0b139 /*zone_id*/,
28414  &kAtcAllZoneContext /*zone_context*/,
28415  10 /*num_eras*/,
28416  kAtcZoneEraEurope_Samara /*eras*/,
28417  NULL /*target_info*/,
28418 };
28419 
28420 //---------------------------------------------------------------------------
28421 // Zone name: Europe/Saratov
28422 // Zone Eras: 9
28423 //---------------------------------------------------------------------------
28424 
28425 static const AtcZoneEra kAtcZoneEraEurope_Saratov[] = {
28426  // 3:04:18 - LMT 1919 Jul 1 0:00u
28427  {
28428  NULL /*zone_policy*/,
28429  "LMT" /*format*/,
28430  737 /*offset_code (11058/15)*/,
28431  3 /*offset_remainder (11058%15)*/,
28432  0 /*delta_minutes*/,
28433  1919 /*until_year*/,
28434  7 /*until_month*/,
28435  1 /*until_day*/,
28436  0 /*until_time_code (0/15)*/,
28437  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
28438  },
28439  // 3:00 - +03 1930 Jun 21
28440  {
28441  NULL /*zone_policy*/,
28442  "+03" /*format*/,
28443  720 /*offset_code (10800/15)*/,
28444  0 /*offset_remainder (10800%15)*/,
28445  0 /*delta_minutes*/,
28446  1930 /*until_year*/,
28447  6 /*until_month*/,
28448  21 /*until_day*/,
28449  0 /*until_time_code (0/15)*/,
28450  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28451  },
28452  // 4:00 Russia +04/+05 1988 Mar 27 2:00s
28453  {
28454  &kAtcAllZonePolicyRussia /*zone_policy*/,
28455  "+04/+05" /*format*/,
28456  960 /*offset_code (14400/15)*/,
28457  0 /*offset_remainder (14400%15)*/,
28458  0 /*delta_minutes*/,
28459  1988 /*until_year*/,
28460  3 /*until_month*/,
28461  27 /*until_day*/,
28462  480 /*until_time_code (7200/15)*/,
28463  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28464  },
28465  // 3:00 Russia +03/+04 1991 Mar 31 2:00s
28466  {
28467  &kAtcAllZonePolicyRussia /*zone_policy*/,
28468  "+03/+04" /*format*/,
28469  720 /*offset_code (10800/15)*/,
28470  0 /*offset_remainder (10800%15)*/,
28471  0 /*delta_minutes*/,
28472  1991 /*until_year*/,
28473  3 /*until_month*/,
28474  31 /*until_day*/,
28475  480 /*until_time_code (7200/15)*/,
28476  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28477  },
28478  // 4:00 - +04 1992 Mar 29 2:00s
28479  {
28480  NULL /*zone_policy*/,
28481  "+04" /*format*/,
28482  960 /*offset_code (14400/15)*/,
28483  0 /*offset_remainder (14400%15)*/,
28484  0 /*delta_minutes*/,
28485  1992 /*until_year*/,
28486  3 /*until_month*/,
28487  29 /*until_day*/,
28488  480 /*until_time_code (7200/15)*/,
28489  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28490  },
28491  // 3:00 Russia +03/+04 2011 Mar 27 2:00s
28492  {
28493  &kAtcAllZonePolicyRussia /*zone_policy*/,
28494  "+03/+04" /*format*/,
28495  720 /*offset_code (10800/15)*/,
28496  0 /*offset_remainder (10800%15)*/,
28497  0 /*delta_minutes*/,
28498  2011 /*until_year*/,
28499  3 /*until_month*/,
28500  27 /*until_day*/,
28501  480 /*until_time_code (7200/15)*/,
28502  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28503  },
28504  // 4:00 - +04 2014 Oct 26 2:00s
28505  {
28506  NULL /*zone_policy*/,
28507  "+04" /*format*/,
28508  960 /*offset_code (14400/15)*/,
28509  0 /*offset_remainder (14400%15)*/,
28510  0 /*delta_minutes*/,
28511  2014 /*until_year*/,
28512  10 /*until_month*/,
28513  26 /*until_day*/,
28514  480 /*until_time_code (7200/15)*/,
28515  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28516  },
28517  // 3:00 - +03 2016 Dec 4 2:00s
28518  {
28519  NULL /*zone_policy*/,
28520  "+03" /*format*/,
28521  720 /*offset_code (10800/15)*/,
28522  0 /*offset_remainder (10800%15)*/,
28523  0 /*delta_minutes*/,
28524  2016 /*until_year*/,
28525  12 /*until_month*/,
28526  4 /*until_day*/,
28527  480 /*until_time_code (7200/15)*/,
28528  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28529  },
28530  // 4:00 - +04
28531  {
28532  NULL /*zone_policy*/,
28533  "+04" /*format*/,
28534  960 /*offset_code (14400/15)*/,
28535  0 /*offset_remainder (14400%15)*/,
28536  0 /*delta_minutes*/,
28537  32767 /*until_year*/,
28538  1 /*until_month*/,
28539  1 /*until_day*/,
28540  0 /*until_time_code (0/15)*/,
28541  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28542  },
28543 
28544 };
28545 
28546 static const char kAtcZoneNameEurope_Saratov[] = "Europe/Saratov";
28547 
28548 const AtcZoneInfo kAtcAllZoneEurope_Saratov = {
28549  kAtcZoneNameEurope_Saratov /*name*/,
28550  0xe4315da4 /*zone_id*/,
28551  &kAtcAllZoneContext /*zone_context*/,
28552  9 /*num_eras*/,
28553  kAtcZoneEraEurope_Saratov /*eras*/,
28554  NULL /*target_info*/,
28555 };
28556 
28557 //---------------------------------------------------------------------------
28558 // Zone name: Europe/Simferopol
28559 // Zone Eras: 15
28560 //---------------------------------------------------------------------------
28561 
28562 static const AtcZoneEra kAtcZoneEraEurope_Simferopol[] = {
28563  // 2:16:24 - LMT 1880
28564  {
28565  NULL /*zone_policy*/,
28566  "LMT" /*format*/,
28567  545 /*offset_code (8184/15)*/,
28568  9 /*offset_remainder (8184%15)*/,
28569  0 /*delta_minutes*/,
28570  1880 /*until_year*/,
28571  1 /*until_month*/,
28572  1 /*until_day*/,
28573  0 /*until_time_code (0/15)*/,
28574  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28575  },
28576  // 2:16 - SMT 1924 May 2
28577  {
28578  NULL /*zone_policy*/,
28579  "SMT" /*format*/,
28580  544 /*offset_code (8160/15)*/,
28581  0 /*offset_remainder (8160%15)*/,
28582  0 /*delta_minutes*/,
28583  1924 /*until_year*/,
28584  5 /*until_month*/,
28585  2 /*until_day*/,
28586  0 /*until_time_code (0/15)*/,
28587  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28588  },
28589  // 2:00 - EET 1930 Jun 21
28590  {
28591  NULL /*zone_policy*/,
28592  "EET" /*format*/,
28593  480 /*offset_code (7200/15)*/,
28594  0 /*offset_remainder (7200%15)*/,
28595  0 /*delta_minutes*/,
28596  1930 /*until_year*/,
28597  6 /*until_month*/,
28598  21 /*until_day*/,
28599  0 /*until_time_code (0/15)*/,
28600  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28601  },
28602  // 3:00 - MSK 1941 Nov
28603  {
28604  NULL /*zone_policy*/,
28605  "MSK" /*format*/,
28606  720 /*offset_code (10800/15)*/,
28607  0 /*offset_remainder (10800%15)*/,
28608  0 /*delta_minutes*/,
28609  1941 /*until_year*/,
28610  11 /*until_month*/,
28611  1 /*until_day*/,
28612  0 /*until_time_code (0/15)*/,
28613  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28614  },
28615  // 1:00 C-Eur CE%sT 1944 Apr 13
28616  {
28617  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28618  "CE%T" /*format*/,
28619  240 /*offset_code (3600/15)*/,
28620  0 /*offset_remainder (3600%15)*/,
28621  0 /*delta_minutes*/,
28622  1944 /*until_year*/,
28623  4 /*until_month*/,
28624  13 /*until_day*/,
28625  0 /*until_time_code (0/15)*/,
28626  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28627  },
28628  // 3:00 Russia MSK/MSD 1990
28629  {
28630  &kAtcAllZonePolicyRussia /*zone_policy*/,
28631  "MSK/MSD" /*format*/,
28632  720 /*offset_code (10800/15)*/,
28633  0 /*offset_remainder (10800%15)*/,
28634  0 /*delta_minutes*/,
28635  1990 /*until_year*/,
28636  1 /*until_month*/,
28637  1 /*until_day*/,
28638  0 /*until_time_code (0/15)*/,
28639  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28640  },
28641  // 3:00 - MSK 1990 Jul 1 2:00
28642  {
28643  NULL /*zone_policy*/,
28644  "MSK" /*format*/,
28645  720 /*offset_code (10800/15)*/,
28646  0 /*offset_remainder (10800%15)*/,
28647  0 /*delta_minutes*/,
28648  1990 /*until_year*/,
28649  7 /*until_month*/,
28650  1 /*until_day*/,
28651  480 /*until_time_code (7200/15)*/,
28652  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28653  },
28654  // 2:00 - EET 1992 Mar 20
28655  {
28656  NULL /*zone_policy*/,
28657  "EET" /*format*/,
28658  480 /*offset_code (7200/15)*/,
28659  0 /*offset_remainder (7200%15)*/,
28660  0 /*delta_minutes*/,
28661  1992 /*until_year*/,
28662  3 /*until_month*/,
28663  20 /*until_day*/,
28664  0 /*until_time_code (0/15)*/,
28665  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28666  },
28667  // 2:00 C-Eur EE%sT 1994 May
28668  {
28669  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28670  "EE%T" /*format*/,
28671  480 /*offset_code (7200/15)*/,
28672  0 /*offset_remainder (7200%15)*/,
28673  0 /*delta_minutes*/,
28674  1994 /*until_year*/,
28675  5 /*until_month*/,
28676  1 /*until_day*/,
28677  0 /*until_time_code (0/15)*/,
28678  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28679  },
28680  // 3:00 C-Eur MSK/MSD 1996 Mar 31 0:00s
28681  {
28682  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28683  "MSK/MSD" /*format*/,
28684  720 /*offset_code (10800/15)*/,
28685  0 /*offset_remainder (10800%15)*/,
28686  0 /*delta_minutes*/,
28687  1996 /*until_year*/,
28688  3 /*until_month*/,
28689  31 /*until_day*/,
28690  0 /*until_time_code (0/15)*/,
28691  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28692  },
28693  // 3:00 1:00 MSD 1996 Oct 27 3:00s
28694  {
28695  NULL /*zone_policy*/,
28696  "MSD" /*format*/,
28697  720 /*offset_code (10800/15)*/,
28698  0 /*offset_remainder (10800%15)*/,
28699  60 /*delta_minutes*/,
28700  1996 /*until_year*/,
28701  10 /*until_month*/,
28702  27 /*until_day*/,
28703  720 /*until_time_code (10800/15)*/,
28704  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28705  },
28706  // 3:00 - MSK 1997 Mar lastSun 1:00u
28707  {
28708  NULL /*zone_policy*/,
28709  "MSK" /*format*/,
28710  720 /*offset_code (10800/15)*/,
28711  0 /*offset_remainder (10800%15)*/,
28712  0 /*delta_minutes*/,
28713  1997 /*until_year*/,
28714  3 /*until_month*/,
28715  30 /*until_day*/,
28716  240 /*until_time_code (3600/15)*/,
28717  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
28718  },
28719  // 2:00 EU EE%sT 2014 Mar 30 2:00
28720  {
28721  &kAtcAllZonePolicyEU /*zone_policy*/,
28722  "EE%T" /*format*/,
28723  480 /*offset_code (7200/15)*/,
28724  0 /*offset_remainder (7200%15)*/,
28725  0 /*delta_minutes*/,
28726  2014 /*until_year*/,
28727  3 /*until_month*/,
28728  30 /*until_day*/,
28729  480 /*until_time_code (7200/15)*/,
28730  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28731  },
28732  // 4:00 - MSK 2014 Oct 26 2:00s
28733  {
28734  NULL /*zone_policy*/,
28735  "MSK" /*format*/,
28736  960 /*offset_code (14400/15)*/,
28737  0 /*offset_remainder (14400%15)*/,
28738  0 /*delta_minutes*/,
28739  2014 /*until_year*/,
28740  10 /*until_month*/,
28741  26 /*until_day*/,
28742  480 /*until_time_code (7200/15)*/,
28743  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
28744  },
28745  // 3:00 - MSK
28746  {
28747  NULL /*zone_policy*/,
28748  "MSK" /*format*/,
28749  720 /*offset_code (10800/15)*/,
28750  0 /*offset_remainder (10800%15)*/,
28751  0 /*delta_minutes*/,
28752  32767 /*until_year*/,
28753  1 /*until_month*/,
28754  1 /*until_day*/,
28755  0 /*until_time_code (0/15)*/,
28756  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28757  },
28758 
28759 };
28760 
28761 static const char kAtcZoneNameEurope_Simferopol[] = "Europe/Simferopol";
28762 
28763 const AtcZoneInfo kAtcAllZoneEurope_Simferopol = {
28764  kAtcZoneNameEurope_Simferopol /*name*/,
28765  0xda9eb724 /*zone_id*/,
28766  &kAtcAllZoneContext /*zone_context*/,
28767  15 /*num_eras*/,
28768  kAtcZoneEraEurope_Simferopol /*eras*/,
28769  NULL /*target_info*/,
28770 };
28771 
28772 //---------------------------------------------------------------------------
28773 // Zone name: Europe/Sofia
28774 // Zone Eras: 10
28775 //---------------------------------------------------------------------------
28776 
28777 static const AtcZoneEra kAtcZoneEraEurope_Sofia[] = {
28778  // 1:33:16 - LMT 1880
28779  {
28780  NULL /*zone_policy*/,
28781  "LMT" /*format*/,
28782  373 /*offset_code (5596/15)*/,
28783  1 /*offset_remainder (5596%15)*/,
28784  0 /*delta_minutes*/,
28785  1880 /*until_year*/,
28786  1 /*until_month*/,
28787  1 /*until_day*/,
28788  0 /*until_time_code (0/15)*/,
28789  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28790  },
28791  // 1:56:56 - IMT 1894 Nov 30
28792  {
28793  NULL /*zone_policy*/,
28794  "IMT" /*format*/,
28795  467 /*offset_code (7016/15)*/,
28796  11 /*offset_remainder (7016%15)*/,
28797  0 /*delta_minutes*/,
28798  1894 /*until_year*/,
28799  11 /*until_month*/,
28800  30 /*until_day*/,
28801  0 /*until_time_code (0/15)*/,
28802  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28803  },
28804  // 2:00 - EET 1942 Nov 2 3:00
28805  {
28806  NULL /*zone_policy*/,
28807  "EET" /*format*/,
28808  480 /*offset_code (7200/15)*/,
28809  0 /*offset_remainder (7200%15)*/,
28810  0 /*delta_minutes*/,
28811  1942 /*until_year*/,
28812  11 /*until_month*/,
28813  2 /*until_day*/,
28814  720 /*until_time_code (10800/15)*/,
28815  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28816  },
28817  // 1:00 C-Eur CE%sT 1945
28818  {
28819  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28820  "CE%T" /*format*/,
28821  240 /*offset_code (3600/15)*/,
28822  0 /*offset_remainder (3600%15)*/,
28823  0 /*delta_minutes*/,
28824  1945 /*until_year*/,
28825  1 /*until_month*/,
28826  1 /*until_day*/,
28827  0 /*until_time_code (0/15)*/,
28828  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28829  },
28830  // 1:00 - CET 1945 Apr 2 3:00
28831  {
28832  NULL /*zone_policy*/,
28833  "CET" /*format*/,
28834  240 /*offset_code (3600/15)*/,
28835  0 /*offset_remainder (3600%15)*/,
28836  0 /*delta_minutes*/,
28837  1945 /*until_year*/,
28838  4 /*until_month*/,
28839  2 /*until_day*/,
28840  720 /*until_time_code (10800/15)*/,
28841  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28842  },
28843  // 2:00 - EET 1979 Mar 31 23:00
28844  {
28845  NULL /*zone_policy*/,
28846  "EET" /*format*/,
28847  480 /*offset_code (7200/15)*/,
28848  0 /*offset_remainder (7200%15)*/,
28849  0 /*delta_minutes*/,
28850  1979 /*until_year*/,
28851  3 /*until_month*/,
28852  31 /*until_day*/,
28853  5520 /*until_time_code (82800/15)*/,
28854  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28855  },
28856  // 2:00 Bulg EE%sT 1982 Sep 26 3:00
28857  {
28858  &kAtcAllZonePolicyBulg /*zone_policy*/,
28859  "EE%T" /*format*/,
28860  480 /*offset_code (7200/15)*/,
28861  0 /*offset_remainder (7200%15)*/,
28862  0 /*delta_minutes*/,
28863  1982 /*until_year*/,
28864  9 /*until_month*/,
28865  26 /*until_day*/,
28866  720 /*until_time_code (10800/15)*/,
28867  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28868  },
28869  // 2:00 C-Eur EE%sT 1991
28870  {
28871  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28872  "EE%T" /*format*/,
28873  480 /*offset_code (7200/15)*/,
28874  0 /*offset_remainder (7200%15)*/,
28875  0 /*delta_minutes*/,
28876  1991 /*until_year*/,
28877  1 /*until_month*/,
28878  1 /*until_day*/,
28879  0 /*until_time_code (0/15)*/,
28880  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28881  },
28882  // 2:00 E-Eur EE%sT 1997
28883  {
28884  &kAtcAllZonePolicyE_Eur /*zone_policy*/,
28885  "EE%T" /*format*/,
28886  480 /*offset_code (7200/15)*/,
28887  0 /*offset_remainder (7200%15)*/,
28888  0 /*delta_minutes*/,
28889  1997 /*until_year*/,
28890  1 /*until_month*/,
28891  1 /*until_day*/,
28892  0 /*until_time_code (0/15)*/,
28893  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28894  },
28895  // 2:00 EU EE%sT
28896  {
28897  &kAtcAllZonePolicyEU /*zone_policy*/,
28898  "EE%T" /*format*/,
28899  480 /*offset_code (7200/15)*/,
28900  0 /*offset_remainder (7200%15)*/,
28901  0 /*delta_minutes*/,
28902  32767 /*until_year*/,
28903  1 /*until_month*/,
28904  1 /*until_day*/,
28905  0 /*until_time_code (0/15)*/,
28906  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28907  },
28908 
28909 };
28910 
28911 static const char kAtcZoneNameEurope_Sofia[] = "Europe/Sofia";
28912 
28913 const AtcZoneInfo kAtcAllZoneEurope_Sofia = {
28914  kAtcZoneNameEurope_Sofia /*name*/,
28915  0xfb898656 /*zone_id*/,
28916  &kAtcAllZoneContext /*zone_context*/,
28917  10 /*num_eras*/,
28918  kAtcZoneEraEurope_Sofia /*eras*/,
28919  NULL /*target_info*/,
28920 };
28921 
28922 //---------------------------------------------------------------------------
28923 // Zone name: Europe/Tallinn
28924 // Zone Eras: 13
28925 //---------------------------------------------------------------------------
28926 
28927 static const AtcZoneEra kAtcZoneEraEurope_Tallinn[] = {
28928  // 1:39:00 - LMT 1880
28929  {
28930  NULL /*zone_policy*/,
28931  "LMT" /*format*/,
28932  396 /*offset_code (5940/15)*/,
28933  0 /*offset_remainder (5940%15)*/,
28934  0 /*delta_minutes*/,
28935  1880 /*until_year*/,
28936  1 /*until_month*/,
28937  1 /*until_day*/,
28938  0 /*until_time_code (0/15)*/,
28939  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28940  },
28941  // 1:39:00 - TMT 1918 Feb
28942  {
28943  NULL /*zone_policy*/,
28944  "TMT" /*format*/,
28945  396 /*offset_code (5940/15)*/,
28946  0 /*offset_remainder (5940%15)*/,
28947  0 /*delta_minutes*/,
28948  1918 /*until_year*/,
28949  2 /*until_month*/,
28950  1 /*until_day*/,
28951  0 /*until_time_code (0/15)*/,
28952  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28953  },
28954  // 1:00 C-Eur CE%sT 1919 Jul
28955  {
28956  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
28957  "CE%T" /*format*/,
28958  240 /*offset_code (3600/15)*/,
28959  0 /*offset_remainder (3600%15)*/,
28960  0 /*delta_minutes*/,
28961  1919 /*until_year*/,
28962  7 /*until_month*/,
28963  1 /*until_day*/,
28964  0 /*until_time_code (0/15)*/,
28965  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28966  },
28967  // 1:39:00 - TMT 1921 May
28968  {
28969  NULL /*zone_policy*/,
28970  "TMT" /*format*/,
28971  396 /*offset_code (5940/15)*/,
28972  0 /*offset_remainder (5940%15)*/,
28973  0 /*delta_minutes*/,
28974  1921 /*until_year*/,
28975  5 /*until_month*/,
28976  1 /*until_day*/,
28977  0 /*until_time_code (0/15)*/,
28978  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28979  },
28980  // 2:00 - EET 1940 Aug 6
28981  {
28982  NULL /*zone_policy*/,
28983  "EET" /*format*/,
28984  480 /*offset_code (7200/15)*/,
28985  0 /*offset_remainder (7200%15)*/,
28986  0 /*delta_minutes*/,
28987  1940 /*until_year*/,
28988  8 /*until_month*/,
28989  6 /*until_day*/,
28990  0 /*until_time_code (0/15)*/,
28991  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
28992  },
28993  // 3:00 - MSK 1941 Sep 15
28994  {
28995  NULL /*zone_policy*/,
28996  "MSK" /*format*/,
28997  720 /*offset_code (10800/15)*/,
28998  0 /*offset_remainder (10800%15)*/,
28999  0 /*delta_minutes*/,
29000  1941 /*until_year*/,
29001  9 /*until_month*/,
29002  15 /*until_day*/,
29003  0 /*until_time_code (0/15)*/,
29004  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29005  },
29006  // 1:00 C-Eur CE%sT 1944 Sep 22
29007  {
29008  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29009  "CE%T" /*format*/,
29010  240 /*offset_code (3600/15)*/,
29011  0 /*offset_remainder (3600%15)*/,
29012  0 /*delta_minutes*/,
29013  1944 /*until_year*/,
29014  9 /*until_month*/,
29015  22 /*until_day*/,
29016  0 /*until_time_code (0/15)*/,
29017  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29018  },
29019  // 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
29020  {
29021  &kAtcAllZonePolicyRussia /*zone_policy*/,
29022  "MSK/MSD" /*format*/,
29023  720 /*offset_code (10800/15)*/,
29024  0 /*offset_remainder (10800%15)*/,
29025  0 /*delta_minutes*/,
29026  1989 /*until_year*/,
29027  3 /*until_month*/,
29028  26 /*until_day*/,
29029  480 /*until_time_code (7200/15)*/,
29030  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29031  },
29032  // 2:00 1:00 EEST 1989 Sep 24 2:00s
29033  {
29034  NULL /*zone_policy*/,
29035  "EEST" /*format*/,
29036  480 /*offset_code (7200/15)*/,
29037  0 /*offset_remainder (7200%15)*/,
29038  60 /*delta_minutes*/,
29039  1989 /*until_year*/,
29040  9 /*until_month*/,
29041  24 /*until_day*/,
29042  480 /*until_time_code (7200/15)*/,
29043  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29044  },
29045  // 2:00 C-Eur EE%sT 1998 Sep 22
29046  {
29047  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29048  "EE%T" /*format*/,
29049  480 /*offset_code (7200/15)*/,
29050  0 /*offset_remainder (7200%15)*/,
29051  0 /*delta_minutes*/,
29052  1998 /*until_year*/,
29053  9 /*until_month*/,
29054  22 /*until_day*/,
29055  0 /*until_time_code (0/15)*/,
29056  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29057  },
29058  // 2:00 EU EE%sT 1999 Oct 31 4:00
29059  {
29060  &kAtcAllZonePolicyEU /*zone_policy*/,
29061  "EE%T" /*format*/,
29062  480 /*offset_code (7200/15)*/,
29063  0 /*offset_remainder (7200%15)*/,
29064  0 /*delta_minutes*/,
29065  1999 /*until_year*/,
29066  10 /*until_month*/,
29067  31 /*until_day*/,
29068  960 /*until_time_code (14400/15)*/,
29069  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29070  },
29071  // 2:00 - EET 2002 Feb 21
29072  {
29073  NULL /*zone_policy*/,
29074  "EET" /*format*/,
29075  480 /*offset_code (7200/15)*/,
29076  0 /*offset_remainder (7200%15)*/,
29077  0 /*delta_minutes*/,
29078  2002 /*until_year*/,
29079  2 /*until_month*/,
29080  21 /*until_day*/,
29081  0 /*until_time_code (0/15)*/,
29082  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29083  },
29084  // 2:00 EU EE%sT
29085  {
29086  &kAtcAllZonePolicyEU /*zone_policy*/,
29087  "EE%T" /*format*/,
29088  480 /*offset_code (7200/15)*/,
29089  0 /*offset_remainder (7200%15)*/,
29090  0 /*delta_minutes*/,
29091  32767 /*until_year*/,
29092  1 /*until_month*/,
29093  1 /*until_day*/,
29094  0 /*until_time_code (0/15)*/,
29095  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29096  },
29097 
29098 };
29099 
29100 static const char kAtcZoneNameEurope_Tallinn[] = "Europe/Tallinn";
29101 
29102 const AtcZoneInfo kAtcAllZoneEurope_Tallinn = {
29103  kAtcZoneNameEurope_Tallinn /*name*/,
29104  0x30c4e096 /*zone_id*/,
29105  &kAtcAllZoneContext /*zone_context*/,
29106  13 /*num_eras*/,
29107  kAtcZoneEraEurope_Tallinn /*eras*/,
29108  NULL /*target_info*/,
29109 };
29110 
29111 //---------------------------------------------------------------------------
29112 // Zone name: Europe/Tirane
29113 // Zone Eras: 4
29114 //---------------------------------------------------------------------------
29115 
29116 static const AtcZoneEra kAtcZoneEraEurope_Tirane[] = {
29117  // 1:19:20 - LMT 1914
29118  {
29119  NULL /*zone_policy*/,
29120  "LMT" /*format*/,
29121  317 /*offset_code (4760/15)*/,
29122  5 /*offset_remainder (4760%15)*/,
29123  0 /*delta_minutes*/,
29124  1914 /*until_year*/,
29125  1 /*until_month*/,
29126  1 /*until_day*/,
29127  0 /*until_time_code (0/15)*/,
29128  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29129  },
29130  // 1:00 - CET 1940 Jun 16
29131  {
29132  NULL /*zone_policy*/,
29133  "CET" /*format*/,
29134  240 /*offset_code (3600/15)*/,
29135  0 /*offset_remainder (3600%15)*/,
29136  0 /*delta_minutes*/,
29137  1940 /*until_year*/,
29138  6 /*until_month*/,
29139  16 /*until_day*/,
29140  0 /*until_time_code (0/15)*/,
29141  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29142  },
29143  // 1:00 Albania CE%sT 1984 Jul
29144  {
29145  &kAtcAllZonePolicyAlbania /*zone_policy*/,
29146  "CE%T" /*format*/,
29147  240 /*offset_code (3600/15)*/,
29148  0 /*offset_remainder (3600%15)*/,
29149  0 /*delta_minutes*/,
29150  1984 /*until_year*/,
29151  7 /*until_month*/,
29152  1 /*until_day*/,
29153  0 /*until_time_code (0/15)*/,
29154  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29155  },
29156  // 1:00 EU CE%sT
29157  {
29158  &kAtcAllZonePolicyEU /*zone_policy*/,
29159  "CE%T" /*format*/,
29160  240 /*offset_code (3600/15)*/,
29161  0 /*offset_remainder (3600%15)*/,
29162  0 /*delta_minutes*/,
29163  32767 /*until_year*/,
29164  1 /*until_month*/,
29165  1 /*until_day*/,
29166  0 /*until_time_code (0/15)*/,
29167  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29168  },
29169 
29170 };
29171 
29172 static const char kAtcZoneNameEurope_Tirane[] = "Europe/Tirane";
29173 
29174 const AtcZoneInfo kAtcAllZoneEurope_Tirane = {
29175  kAtcZoneNameEurope_Tirane /*name*/,
29176  0x6ea95b47 /*zone_id*/,
29177  &kAtcAllZoneContext /*zone_context*/,
29178  4 /*num_eras*/,
29179  kAtcZoneEraEurope_Tirane /*eras*/,
29180  NULL /*target_info*/,
29181 };
29182 
29183 //---------------------------------------------------------------------------
29184 // Zone name: Europe/Ulyanovsk
29185 // Zone Eras: 9
29186 //---------------------------------------------------------------------------
29187 
29188 static const AtcZoneEra kAtcZoneEraEurope_Ulyanovsk[] = {
29189  // 3:13:36 - LMT 1919 Jul 1 0:00u
29190  {
29191  NULL /*zone_policy*/,
29192  "LMT" /*format*/,
29193  774 /*offset_code (11616/15)*/,
29194  6 /*offset_remainder (11616%15)*/,
29195  0 /*delta_minutes*/,
29196  1919 /*until_year*/,
29197  7 /*until_month*/,
29198  1 /*until_day*/,
29199  0 /*until_time_code (0/15)*/,
29200  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
29201  },
29202  // 3:00 - +03 1930 Jun 21
29203  {
29204  NULL /*zone_policy*/,
29205  "+03" /*format*/,
29206  720 /*offset_code (10800/15)*/,
29207  0 /*offset_remainder (10800%15)*/,
29208  0 /*delta_minutes*/,
29209  1930 /*until_year*/,
29210  6 /*until_month*/,
29211  21 /*until_day*/,
29212  0 /*until_time_code (0/15)*/,
29213  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29214  },
29215  // 4:00 Russia +04/+05 1989 Mar 26 2:00s
29216  {
29217  &kAtcAllZonePolicyRussia /*zone_policy*/,
29218  "+04/+05" /*format*/,
29219  960 /*offset_code (14400/15)*/,
29220  0 /*offset_remainder (14400%15)*/,
29221  0 /*delta_minutes*/,
29222  1989 /*until_year*/,
29223  3 /*until_month*/,
29224  26 /*until_day*/,
29225  480 /*until_time_code (7200/15)*/,
29226  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29227  },
29228  // 3:00 Russia +03/+04 1991 Mar 31 2:00s
29229  {
29230  &kAtcAllZonePolicyRussia /*zone_policy*/,
29231  "+03/+04" /*format*/,
29232  720 /*offset_code (10800/15)*/,
29233  0 /*offset_remainder (10800%15)*/,
29234  0 /*delta_minutes*/,
29235  1991 /*until_year*/,
29236  3 /*until_month*/,
29237  31 /*until_day*/,
29238  480 /*until_time_code (7200/15)*/,
29239  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29240  },
29241  // 2:00 Russia +02/+03 1992 Jan 19 2:00s
29242  {
29243  &kAtcAllZonePolicyRussia /*zone_policy*/,
29244  "+02/+03" /*format*/,
29245  480 /*offset_code (7200/15)*/,
29246  0 /*offset_remainder (7200%15)*/,
29247  0 /*delta_minutes*/,
29248  1992 /*until_year*/,
29249  1 /*until_month*/,
29250  19 /*until_day*/,
29251  480 /*until_time_code (7200/15)*/,
29252  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29253  },
29254  // 3:00 Russia +03/+04 2011 Mar 27 2:00s
29255  {
29256  &kAtcAllZonePolicyRussia /*zone_policy*/,
29257  "+03/+04" /*format*/,
29258  720 /*offset_code (10800/15)*/,
29259  0 /*offset_remainder (10800%15)*/,
29260  0 /*delta_minutes*/,
29261  2011 /*until_year*/,
29262  3 /*until_month*/,
29263  27 /*until_day*/,
29264  480 /*until_time_code (7200/15)*/,
29265  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29266  },
29267  // 4:00 - +04 2014 Oct 26 2:00s
29268  {
29269  NULL /*zone_policy*/,
29270  "+04" /*format*/,
29271  960 /*offset_code (14400/15)*/,
29272  0 /*offset_remainder (14400%15)*/,
29273  0 /*delta_minutes*/,
29274  2014 /*until_year*/,
29275  10 /*until_month*/,
29276  26 /*until_day*/,
29277  480 /*until_time_code (7200/15)*/,
29278  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29279  },
29280  // 3:00 - +03 2016 Mar 27 2:00s
29281  {
29282  NULL /*zone_policy*/,
29283  "+03" /*format*/,
29284  720 /*offset_code (10800/15)*/,
29285  0 /*offset_remainder (10800%15)*/,
29286  0 /*delta_minutes*/,
29287  2016 /*until_year*/,
29288  3 /*until_month*/,
29289  27 /*until_day*/,
29290  480 /*until_time_code (7200/15)*/,
29291  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29292  },
29293  // 4:00 - +04
29294  {
29295  NULL /*zone_policy*/,
29296  "+04" /*format*/,
29297  960 /*offset_code (14400/15)*/,
29298  0 /*offset_remainder (14400%15)*/,
29299  0 /*delta_minutes*/,
29300  32767 /*until_year*/,
29301  1 /*until_month*/,
29302  1 /*until_day*/,
29303  0 /*until_time_code (0/15)*/,
29304  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29305  },
29306 
29307 };
29308 
29309 static const char kAtcZoneNameEurope_Ulyanovsk[] = "Europe/Ulyanovsk";
29310 
29311 const AtcZoneInfo kAtcAllZoneEurope_Ulyanovsk = {
29312  kAtcZoneNameEurope_Ulyanovsk /*name*/,
29313  0xe03783d0 /*zone_id*/,
29314  &kAtcAllZoneContext /*zone_context*/,
29315  9 /*num_eras*/,
29316  kAtcZoneEraEurope_Ulyanovsk /*eras*/,
29317  NULL /*target_info*/,
29318 };
29319 
29320 //---------------------------------------------------------------------------
29321 // Zone name: Europe/Vienna
29322 // Zone Eras: 8
29323 //---------------------------------------------------------------------------
29324 
29325 static const AtcZoneEra kAtcZoneEraEurope_Vienna[] = {
29326  // 1:05:21 - LMT 1893 Apr
29327  {
29328  NULL /*zone_policy*/,
29329  "LMT" /*format*/,
29330  261 /*offset_code (3921/15)*/,
29331  6 /*offset_remainder (3921%15)*/,
29332  0 /*delta_minutes*/,
29333  1893 /*until_year*/,
29334  4 /*until_month*/,
29335  1 /*until_day*/,
29336  0 /*until_time_code (0/15)*/,
29337  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29338  },
29339  // 1:00 C-Eur CE%sT 1920
29340  {
29341  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29342  "CE%T" /*format*/,
29343  240 /*offset_code (3600/15)*/,
29344  0 /*offset_remainder (3600%15)*/,
29345  0 /*delta_minutes*/,
29346  1920 /*until_year*/,
29347  1 /*until_month*/,
29348  1 /*until_day*/,
29349  0 /*until_time_code (0/15)*/,
29350  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29351  },
29352  // 1:00 Austria CE%sT 1940 Apr 1 2:00s
29353  {
29354  &kAtcAllZonePolicyAustria /*zone_policy*/,
29355  "CE%T" /*format*/,
29356  240 /*offset_code (3600/15)*/,
29357  0 /*offset_remainder (3600%15)*/,
29358  0 /*delta_minutes*/,
29359  1940 /*until_year*/,
29360  4 /*until_month*/,
29361  1 /*until_day*/,
29362  480 /*until_time_code (7200/15)*/,
29363  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29364  },
29365  // 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
29366  {
29367  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29368  "CE%T" /*format*/,
29369  240 /*offset_code (3600/15)*/,
29370  0 /*offset_remainder (3600%15)*/,
29371  0 /*delta_minutes*/,
29372  1945 /*until_year*/,
29373  4 /*until_month*/,
29374  2 /*until_day*/,
29375  480 /*until_time_code (7200/15)*/,
29376  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29377  },
29378  // 1:00 1:00 CEST 1945 Apr 12 2:00s
29379  {
29380  NULL /*zone_policy*/,
29381  "CEST" /*format*/,
29382  240 /*offset_code (3600/15)*/,
29383  0 /*offset_remainder (3600%15)*/,
29384  60 /*delta_minutes*/,
29385  1945 /*until_year*/,
29386  4 /*until_month*/,
29387  12 /*until_day*/,
29388  480 /*until_time_code (7200/15)*/,
29389  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29390  },
29391  // 1:00 - CET 1946
29392  {
29393  NULL /*zone_policy*/,
29394  "CET" /*format*/,
29395  240 /*offset_code (3600/15)*/,
29396  0 /*offset_remainder (3600%15)*/,
29397  0 /*delta_minutes*/,
29398  1946 /*until_year*/,
29399  1 /*until_month*/,
29400  1 /*until_day*/,
29401  0 /*until_time_code (0/15)*/,
29402  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29403  },
29404  // 1:00 Austria CE%sT 1981
29405  {
29406  &kAtcAllZonePolicyAustria /*zone_policy*/,
29407  "CE%T" /*format*/,
29408  240 /*offset_code (3600/15)*/,
29409  0 /*offset_remainder (3600%15)*/,
29410  0 /*delta_minutes*/,
29411  1981 /*until_year*/,
29412  1 /*until_month*/,
29413  1 /*until_day*/,
29414  0 /*until_time_code (0/15)*/,
29415  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29416  },
29417  // 1:00 EU CE%sT
29418  {
29419  &kAtcAllZonePolicyEU /*zone_policy*/,
29420  "CE%T" /*format*/,
29421  240 /*offset_code (3600/15)*/,
29422  0 /*offset_remainder (3600%15)*/,
29423  0 /*delta_minutes*/,
29424  32767 /*until_year*/,
29425  1 /*until_month*/,
29426  1 /*until_day*/,
29427  0 /*until_time_code (0/15)*/,
29428  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29429  },
29430 
29431 };
29432 
29433 static const char kAtcZoneNameEurope_Vienna[] = "Europe/Vienna";
29434 
29435 const AtcZoneInfo kAtcAllZoneEurope_Vienna = {
29436  kAtcZoneNameEurope_Vienna /*name*/,
29437  0x734cc2e5 /*zone_id*/,
29438  &kAtcAllZoneContext /*zone_context*/,
29439  8 /*num_eras*/,
29440  kAtcZoneEraEurope_Vienna /*eras*/,
29441  NULL /*target_info*/,
29442 };
29443 
29444 //---------------------------------------------------------------------------
29445 // Zone name: Europe/Vilnius
29446 // Zone Eras: 15
29447 //---------------------------------------------------------------------------
29448 
29449 static const AtcZoneEra kAtcZoneEraEurope_Vilnius[] = {
29450  // 1:41:16 - LMT 1880
29451  {
29452  NULL /*zone_policy*/,
29453  "LMT" /*format*/,
29454  405 /*offset_code (6076/15)*/,
29455  1 /*offset_remainder (6076%15)*/,
29456  0 /*delta_minutes*/,
29457  1880 /*until_year*/,
29458  1 /*until_month*/,
29459  1 /*until_day*/,
29460  0 /*until_time_code (0/15)*/,
29461  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29462  },
29463  // 1:24:00 - WMT 1917
29464  {
29465  NULL /*zone_policy*/,
29466  "WMT" /*format*/,
29467  336 /*offset_code (5040/15)*/,
29468  0 /*offset_remainder (5040%15)*/,
29469  0 /*delta_minutes*/,
29470  1917 /*until_year*/,
29471  1 /*until_month*/,
29472  1 /*until_day*/,
29473  0 /*until_time_code (0/15)*/,
29474  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29475  },
29476  // 1:35:36 - KMT 1919 Oct 10
29477  {
29478  NULL /*zone_policy*/,
29479  "KMT" /*format*/,
29480  382 /*offset_code (5736/15)*/,
29481  6 /*offset_remainder (5736%15)*/,
29482  0 /*delta_minutes*/,
29483  1919 /*until_year*/,
29484  10 /*until_month*/,
29485  10 /*until_day*/,
29486  0 /*until_time_code (0/15)*/,
29487  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29488  },
29489  // 1:00 - CET 1920 Jul 12
29490  {
29491  NULL /*zone_policy*/,
29492  "CET" /*format*/,
29493  240 /*offset_code (3600/15)*/,
29494  0 /*offset_remainder (3600%15)*/,
29495  0 /*delta_minutes*/,
29496  1920 /*until_year*/,
29497  7 /*until_month*/,
29498  12 /*until_day*/,
29499  0 /*until_time_code (0/15)*/,
29500  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29501  },
29502  // 2:00 - EET 1920 Oct 9
29503  {
29504  NULL /*zone_policy*/,
29505  "EET" /*format*/,
29506  480 /*offset_code (7200/15)*/,
29507  0 /*offset_remainder (7200%15)*/,
29508  0 /*delta_minutes*/,
29509  1920 /*until_year*/,
29510  10 /*until_month*/,
29511  9 /*until_day*/,
29512  0 /*until_time_code (0/15)*/,
29513  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29514  },
29515  // 1:00 - CET 1940 Aug 3
29516  {
29517  NULL /*zone_policy*/,
29518  "CET" /*format*/,
29519  240 /*offset_code (3600/15)*/,
29520  0 /*offset_remainder (3600%15)*/,
29521  0 /*delta_minutes*/,
29522  1940 /*until_year*/,
29523  8 /*until_month*/,
29524  3 /*until_day*/,
29525  0 /*until_time_code (0/15)*/,
29526  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29527  },
29528  // 3:00 - MSK 1941 Jun 24
29529  {
29530  NULL /*zone_policy*/,
29531  "MSK" /*format*/,
29532  720 /*offset_code (10800/15)*/,
29533  0 /*offset_remainder (10800%15)*/,
29534  0 /*delta_minutes*/,
29535  1941 /*until_year*/,
29536  6 /*until_month*/,
29537  24 /*until_day*/,
29538  0 /*until_time_code (0/15)*/,
29539  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29540  },
29541  // 1:00 C-Eur CE%sT 1944 Aug
29542  {
29543  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29544  "CE%T" /*format*/,
29545  240 /*offset_code (3600/15)*/,
29546  0 /*offset_remainder (3600%15)*/,
29547  0 /*delta_minutes*/,
29548  1944 /*until_year*/,
29549  8 /*until_month*/,
29550  1 /*until_day*/,
29551  0 /*until_time_code (0/15)*/,
29552  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29553  },
29554  // 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
29555  {
29556  &kAtcAllZonePolicyRussia /*zone_policy*/,
29557  "MSK/MSD" /*format*/,
29558  720 /*offset_code (10800/15)*/,
29559  0 /*offset_remainder (10800%15)*/,
29560  0 /*delta_minutes*/,
29561  1989 /*until_year*/,
29562  3 /*until_month*/,
29563  26 /*until_day*/,
29564  480 /*until_time_code (7200/15)*/,
29565  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29566  },
29567  // 2:00 Russia EE%sT 1991 Sep 29 2:00s
29568  {
29569  &kAtcAllZonePolicyRussia /*zone_policy*/,
29570  "EE%T" /*format*/,
29571  480 /*offset_code (7200/15)*/,
29572  0 /*offset_remainder (7200%15)*/,
29573  0 /*delta_minutes*/,
29574  1991 /*until_year*/,
29575  9 /*until_month*/,
29576  29 /*until_day*/,
29577  480 /*until_time_code (7200/15)*/,
29578  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29579  },
29580  // 2:00 C-Eur EE%sT 1998
29581  {
29582  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29583  "EE%T" /*format*/,
29584  480 /*offset_code (7200/15)*/,
29585  0 /*offset_remainder (7200%15)*/,
29586  0 /*delta_minutes*/,
29587  1998 /*until_year*/,
29588  1 /*until_month*/,
29589  1 /*until_day*/,
29590  0 /*until_time_code (0/15)*/,
29591  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29592  },
29593  // 2:00 - EET 1998 Mar 29 1:00u
29594  {
29595  NULL /*zone_policy*/,
29596  "EET" /*format*/,
29597  480 /*offset_code (7200/15)*/,
29598  0 /*offset_remainder (7200%15)*/,
29599  0 /*delta_minutes*/,
29600  1998 /*until_year*/,
29601  3 /*until_month*/,
29602  29 /*until_day*/,
29603  240 /*until_time_code (3600/15)*/,
29604  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
29605  },
29606  // 1:00 EU CE%sT 1999 Oct 31 1:00u
29607  {
29608  &kAtcAllZonePolicyEU /*zone_policy*/,
29609  "CE%T" /*format*/,
29610  240 /*offset_code (3600/15)*/,
29611  0 /*offset_remainder (3600%15)*/,
29612  0 /*delta_minutes*/,
29613  1999 /*until_year*/,
29614  10 /*until_month*/,
29615  31 /*until_day*/,
29616  240 /*until_time_code (3600/15)*/,
29617  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
29618  },
29619  // 2:00 - EET 2003 Jan 1
29620  {
29621  NULL /*zone_policy*/,
29622  "EET" /*format*/,
29623  480 /*offset_code (7200/15)*/,
29624  0 /*offset_remainder (7200%15)*/,
29625  0 /*delta_minutes*/,
29626  2003 /*until_year*/,
29627  1 /*until_month*/,
29628  1 /*until_day*/,
29629  0 /*until_time_code (0/15)*/,
29630  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29631  },
29632  // 2:00 EU EE%sT
29633  {
29634  &kAtcAllZonePolicyEU /*zone_policy*/,
29635  "EE%T" /*format*/,
29636  480 /*offset_code (7200/15)*/,
29637  0 /*offset_remainder (7200%15)*/,
29638  0 /*delta_minutes*/,
29639  32767 /*until_year*/,
29640  1 /*until_month*/,
29641  1 /*until_day*/,
29642  0 /*until_time_code (0/15)*/,
29643  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29644  },
29645 
29646 };
29647 
29648 static const char kAtcZoneNameEurope_Vilnius[] = "Europe/Vilnius";
29649 
29650 const AtcZoneInfo kAtcAllZoneEurope_Vilnius = {
29651  kAtcZoneNameEurope_Vilnius /*name*/,
29652  0xdd63b8ce /*zone_id*/,
29653  &kAtcAllZoneContext /*zone_context*/,
29654  15 /*num_eras*/,
29655  kAtcZoneEraEurope_Vilnius /*eras*/,
29656  NULL /*target_info*/,
29657 };
29658 
29659 //---------------------------------------------------------------------------
29660 // Zone name: Europe/Volgograd
29661 // Zone Eras: 11
29662 //---------------------------------------------------------------------------
29663 
29664 static const AtcZoneEra kAtcZoneEraEurope_Volgograd[] = {
29665  // 2:57:40 - LMT 1920 Jan 3
29666  {
29667  NULL /*zone_policy*/,
29668  "LMT" /*format*/,
29669  710 /*offset_code (10660/15)*/,
29670  10 /*offset_remainder (10660%15)*/,
29671  0 /*delta_minutes*/,
29672  1920 /*until_year*/,
29673  1 /*until_month*/,
29674  3 /*until_day*/,
29675  0 /*until_time_code (0/15)*/,
29676  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29677  },
29678  // 3:00 - +03 1930 Jun 21
29679  {
29680  NULL /*zone_policy*/,
29681  "+03" /*format*/,
29682  720 /*offset_code (10800/15)*/,
29683  0 /*offset_remainder (10800%15)*/,
29684  0 /*delta_minutes*/,
29685  1930 /*until_year*/,
29686  6 /*until_month*/,
29687  21 /*until_day*/,
29688  0 /*until_time_code (0/15)*/,
29689  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29690  },
29691  // 4:00 - +04 1961 Nov 11
29692  {
29693  NULL /*zone_policy*/,
29694  "+04" /*format*/,
29695  960 /*offset_code (14400/15)*/,
29696  0 /*offset_remainder (14400%15)*/,
29697  0 /*delta_minutes*/,
29698  1961 /*until_year*/,
29699  11 /*until_month*/,
29700  11 /*until_day*/,
29701  0 /*until_time_code (0/15)*/,
29702  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29703  },
29704  // 4:00 Russia +04/+05 1988 Mar 27 2:00s
29705  {
29706  &kAtcAllZonePolicyRussia /*zone_policy*/,
29707  "+04/+05" /*format*/,
29708  960 /*offset_code (14400/15)*/,
29709  0 /*offset_remainder (14400%15)*/,
29710  0 /*delta_minutes*/,
29711  1988 /*until_year*/,
29712  3 /*until_month*/,
29713  27 /*until_day*/,
29714  480 /*until_time_code (7200/15)*/,
29715  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29716  },
29717  // 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
29718  {
29719  &kAtcAllZonePolicyRussia /*zone_policy*/,
29720  "MSK/MSD" /*format*/,
29721  720 /*offset_code (10800/15)*/,
29722  0 /*offset_remainder (10800%15)*/,
29723  0 /*delta_minutes*/,
29724  1991 /*until_year*/,
29725  3 /*until_month*/,
29726  31 /*until_day*/,
29727  480 /*until_time_code (7200/15)*/,
29728  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29729  },
29730  // 4:00 - +04 1992 Mar 29 2:00s
29731  {
29732  NULL /*zone_policy*/,
29733  "+04" /*format*/,
29734  960 /*offset_code (14400/15)*/,
29735  0 /*offset_remainder (14400%15)*/,
29736  0 /*delta_minutes*/,
29737  1992 /*until_year*/,
29738  3 /*until_month*/,
29739  29 /*until_day*/,
29740  480 /*until_time_code (7200/15)*/,
29741  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29742  },
29743  // 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
29744  {
29745  &kAtcAllZonePolicyRussia /*zone_policy*/,
29746  "MSK/MSD" /*format*/,
29747  720 /*offset_code (10800/15)*/,
29748  0 /*offset_remainder (10800%15)*/,
29749  0 /*delta_minutes*/,
29750  2011 /*until_year*/,
29751  3 /*until_month*/,
29752  27 /*until_day*/,
29753  480 /*until_time_code (7200/15)*/,
29754  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29755  },
29756  // 4:00 - MSK 2014 Oct 26 2:00s
29757  {
29758  NULL /*zone_policy*/,
29759  "MSK" /*format*/,
29760  960 /*offset_code (14400/15)*/,
29761  0 /*offset_remainder (14400%15)*/,
29762  0 /*delta_minutes*/,
29763  2014 /*until_year*/,
29764  10 /*until_month*/,
29765  26 /*until_day*/,
29766  480 /*until_time_code (7200/15)*/,
29767  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29768  },
29769  // 3:00 - MSK 2018 Oct 28 2:00s
29770  {
29771  NULL /*zone_policy*/,
29772  "MSK" /*format*/,
29773  720 /*offset_code (10800/15)*/,
29774  0 /*offset_remainder (10800%15)*/,
29775  0 /*delta_minutes*/,
29776  2018 /*until_year*/,
29777  10 /*until_month*/,
29778  28 /*until_day*/,
29779  480 /*until_time_code (7200/15)*/,
29780  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29781  },
29782  // 4:00 - +04 2020 Dec 27 2:00s
29783  {
29784  NULL /*zone_policy*/,
29785  "+04" /*format*/,
29786  960 /*offset_code (14400/15)*/,
29787  0 /*offset_remainder (14400%15)*/,
29788  0 /*delta_minutes*/,
29789  2020 /*until_year*/,
29790  12 /*until_month*/,
29791  27 /*until_day*/,
29792  480 /*until_time_code (7200/15)*/,
29793  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
29794  },
29795  // 3:00 - MSK
29796  {
29797  NULL /*zone_policy*/,
29798  "MSK" /*format*/,
29799  720 /*offset_code (10800/15)*/,
29800  0 /*offset_remainder (10800%15)*/,
29801  0 /*delta_minutes*/,
29802  32767 /*until_year*/,
29803  1 /*until_month*/,
29804  1 /*until_day*/,
29805  0 /*until_time_code (0/15)*/,
29806  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29807  },
29808 
29809 };
29810 
29811 static const char kAtcZoneNameEurope_Volgograd[] = "Europe/Volgograd";
29812 
29813 const AtcZoneInfo kAtcAllZoneEurope_Volgograd = {
29814  kAtcZoneNameEurope_Volgograd /*name*/,
29815  0x3ed0f389 /*zone_id*/,
29816  &kAtcAllZoneContext /*zone_context*/,
29817  11 /*num_eras*/,
29818  kAtcZoneEraEurope_Volgograd /*eras*/,
29819  NULL /*target_info*/,
29820 };
29821 
29822 //---------------------------------------------------------------------------
29823 // Zone name: Europe/Warsaw
29824 // Zone Eras: 9
29825 //---------------------------------------------------------------------------
29826 
29827 static const AtcZoneEra kAtcZoneEraEurope_Warsaw[] = {
29828  // 1:24:00 - LMT 1880
29829  {
29830  NULL /*zone_policy*/,
29831  "LMT" /*format*/,
29832  336 /*offset_code (5040/15)*/,
29833  0 /*offset_remainder (5040%15)*/,
29834  0 /*delta_minutes*/,
29835  1880 /*until_year*/,
29836  1 /*until_month*/,
29837  1 /*until_day*/,
29838  0 /*until_time_code (0/15)*/,
29839  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29840  },
29841  // 1:24:00 - WMT 1915 Aug 5
29842  {
29843  NULL /*zone_policy*/,
29844  "WMT" /*format*/,
29845  336 /*offset_code (5040/15)*/,
29846  0 /*offset_remainder (5040%15)*/,
29847  0 /*delta_minutes*/,
29848  1915 /*until_year*/,
29849  8 /*until_month*/,
29850  5 /*until_day*/,
29851  0 /*until_time_code (0/15)*/,
29852  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29853  },
29854  // 1:00 C-Eur CE%sT 1918 Sep 16 3:00
29855  {
29856  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29857  "CE%T" /*format*/,
29858  240 /*offset_code (3600/15)*/,
29859  0 /*offset_remainder (3600%15)*/,
29860  0 /*delta_minutes*/,
29861  1918 /*until_year*/,
29862  9 /*until_month*/,
29863  16 /*until_day*/,
29864  720 /*until_time_code (10800/15)*/,
29865  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29866  },
29867  // 2:00 Poland EE%sT 1922 Jun
29868  {
29869  &kAtcAllZonePolicyPoland /*zone_policy*/,
29870  "EE%T" /*format*/,
29871  480 /*offset_code (7200/15)*/,
29872  0 /*offset_remainder (7200%15)*/,
29873  0 /*delta_minutes*/,
29874  1922 /*until_year*/,
29875  6 /*until_month*/,
29876  1 /*until_day*/,
29877  0 /*until_time_code (0/15)*/,
29878  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29879  },
29880  // 1:00 Poland CE%sT 1940 Jun 23 2:00
29881  {
29882  &kAtcAllZonePolicyPoland /*zone_policy*/,
29883  "CE%T" /*format*/,
29884  240 /*offset_code (3600/15)*/,
29885  0 /*offset_remainder (3600%15)*/,
29886  0 /*delta_minutes*/,
29887  1940 /*until_year*/,
29888  6 /*until_month*/,
29889  23 /*until_day*/,
29890  480 /*until_time_code (7200/15)*/,
29891  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29892  },
29893  // 1:00 C-Eur CE%sT 1944 Oct
29894  {
29895  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
29896  "CE%T" /*format*/,
29897  240 /*offset_code (3600/15)*/,
29898  0 /*offset_remainder (3600%15)*/,
29899  0 /*delta_minutes*/,
29900  1944 /*until_year*/,
29901  10 /*until_month*/,
29902  1 /*until_day*/,
29903  0 /*until_time_code (0/15)*/,
29904  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29905  },
29906  // 1:00 Poland CE%sT 1977
29907  {
29908  &kAtcAllZonePolicyPoland /*zone_policy*/,
29909  "CE%T" /*format*/,
29910  240 /*offset_code (3600/15)*/,
29911  0 /*offset_remainder (3600%15)*/,
29912  0 /*delta_minutes*/,
29913  1977 /*until_year*/,
29914  1 /*until_month*/,
29915  1 /*until_day*/,
29916  0 /*until_time_code (0/15)*/,
29917  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29918  },
29919  // 1:00 W-Eur CE%sT 1988
29920  {
29921  &kAtcAllZonePolicyW_Eur /*zone_policy*/,
29922  "CE%T" /*format*/,
29923  240 /*offset_code (3600/15)*/,
29924  0 /*offset_remainder (3600%15)*/,
29925  0 /*delta_minutes*/,
29926  1988 /*until_year*/,
29927  1 /*until_month*/,
29928  1 /*until_day*/,
29929  0 /*until_time_code (0/15)*/,
29930  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29931  },
29932  // 1:00 EU CE%sT
29933  {
29934  &kAtcAllZonePolicyEU /*zone_policy*/,
29935  "CE%T" /*format*/,
29936  240 /*offset_code (3600/15)*/,
29937  0 /*offset_remainder (3600%15)*/,
29938  0 /*delta_minutes*/,
29939  32767 /*until_year*/,
29940  1 /*until_month*/,
29941  1 /*until_day*/,
29942  0 /*until_time_code (0/15)*/,
29943  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29944  },
29945 
29946 };
29947 
29948 static const char kAtcZoneNameEurope_Warsaw[] = "Europe/Warsaw";
29949 
29950 const AtcZoneInfo kAtcAllZoneEurope_Warsaw = {
29951  kAtcZoneNameEurope_Warsaw /*name*/,
29952  0x75185c19 /*zone_id*/,
29953  &kAtcAllZoneContext /*zone_context*/,
29954  9 /*num_eras*/,
29955  kAtcZoneEraEurope_Warsaw /*eras*/,
29956  NULL /*target_info*/,
29957 };
29958 
29959 //---------------------------------------------------------------------------
29960 // Zone name: Europe/Zurich
29961 // Zone Eras: 4
29962 //---------------------------------------------------------------------------
29963 
29964 static const AtcZoneEra kAtcZoneEraEurope_Zurich[] = {
29965  // 0:34:08 - LMT 1853 Jul 16
29966  {
29967  NULL /*zone_policy*/,
29968  "LMT" /*format*/,
29969  136 /*offset_code (2048/15)*/,
29970  8 /*offset_remainder (2048%15)*/,
29971  0 /*delta_minutes*/,
29972  1853 /*until_year*/,
29973  7 /*until_month*/,
29974  16 /*until_day*/,
29975  0 /*until_time_code (0/15)*/,
29976  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29977  },
29978  // 0:29:46 - BMT 1894 Jun
29979  {
29980  NULL /*zone_policy*/,
29981  "BMT" /*format*/,
29982  119 /*offset_code (1786/15)*/,
29983  1 /*offset_remainder (1786%15)*/,
29984  0 /*delta_minutes*/,
29985  1894 /*until_year*/,
29986  6 /*until_month*/,
29987  1 /*until_day*/,
29988  0 /*until_time_code (0/15)*/,
29989  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
29990  },
29991  // 1:00 Swiss CE%sT 1981
29992  {
29993  &kAtcAllZonePolicySwiss /*zone_policy*/,
29994  "CE%T" /*format*/,
29995  240 /*offset_code (3600/15)*/,
29996  0 /*offset_remainder (3600%15)*/,
29997  0 /*delta_minutes*/,
29998  1981 /*until_year*/,
29999  1 /*until_month*/,
30000  1 /*until_day*/,
30001  0 /*until_time_code (0/15)*/,
30002  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30003  },
30004  // 1:00 EU CE%sT
30005  {
30006  &kAtcAllZonePolicyEU /*zone_policy*/,
30007  "CE%T" /*format*/,
30008  240 /*offset_code (3600/15)*/,
30009  0 /*offset_remainder (3600%15)*/,
30010  0 /*delta_minutes*/,
30011  32767 /*until_year*/,
30012  1 /*until_month*/,
30013  1 /*until_day*/,
30014  0 /*until_time_code (0/15)*/,
30015  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30016  },
30017 
30018 };
30019 
30020 static const char kAtcZoneNameEurope_Zurich[] = "Europe/Zurich";
30021 
30022 const AtcZoneInfo kAtcAllZoneEurope_Zurich = {
30023  kAtcZoneNameEurope_Zurich /*name*/,
30024  0x7d8195b9 /*zone_id*/,
30025  &kAtcAllZoneContext /*zone_context*/,
30026  4 /*num_eras*/,
30027  kAtcZoneEraEurope_Zurich /*eras*/,
30028  NULL /*target_info*/,
30029 };
30030 
30031 //---------------------------------------------------------------------------
30032 // Zone name: HST
30033 // Zone Eras: 1
30034 //---------------------------------------------------------------------------
30035 
30036 static const AtcZoneEra kAtcZoneEraHST[] = {
30037  // -10:00 - HST
30038  {
30039  NULL /*zone_policy*/,
30040  "HST" /*format*/,
30041  -2400 /*offset_code (-36000/15)*/,
30042  0 /*offset_remainder (-36000%15)*/,
30043  0 /*delta_minutes*/,
30044  32767 /*until_year*/,
30045  1 /*until_month*/,
30046  1 /*until_day*/,
30047  0 /*until_time_code (0/15)*/,
30048  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30049  },
30050 
30051 };
30052 
30053 static const char kAtcZoneNameHST[] = "HST";
30054 
30055 const AtcZoneInfo kAtcAllZoneHST = {
30056  kAtcZoneNameHST /*name*/,
30057  0x0b87f034 /*zone_id*/,
30058  &kAtcAllZoneContext /*zone_context*/,
30059  1 /*num_eras*/,
30060  kAtcZoneEraHST /*eras*/,
30061  NULL /*target_info*/,
30062 };
30063 
30064 //---------------------------------------------------------------------------
30065 // Zone name: Indian/Chagos
30066 // Zone Eras: 3
30067 //---------------------------------------------------------------------------
30068 
30069 static const AtcZoneEra kAtcZoneEraIndian_Chagos[] = {
30070  // 4:49:40 - LMT 1907
30071  {
30072  NULL /*zone_policy*/,
30073  "LMT" /*format*/,
30074  1158 /*offset_code (17380/15)*/,
30075  10 /*offset_remainder (17380%15)*/,
30076  0 /*delta_minutes*/,
30077  1907 /*until_year*/,
30078  1 /*until_month*/,
30079  1 /*until_day*/,
30080  0 /*until_time_code (0/15)*/,
30081  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30082  },
30083  // 5:00 - +05 1996
30084  {
30085  NULL /*zone_policy*/,
30086  "+05" /*format*/,
30087  1200 /*offset_code (18000/15)*/,
30088  0 /*offset_remainder (18000%15)*/,
30089  0 /*delta_minutes*/,
30090  1996 /*until_year*/,
30091  1 /*until_month*/,
30092  1 /*until_day*/,
30093  0 /*until_time_code (0/15)*/,
30094  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30095  },
30096  // 6:00 - +06
30097  {
30098  NULL /*zone_policy*/,
30099  "+06" /*format*/,
30100  1440 /*offset_code (21600/15)*/,
30101  0 /*offset_remainder (21600%15)*/,
30102  0 /*delta_minutes*/,
30103  32767 /*until_year*/,
30104  1 /*until_month*/,
30105  1 /*until_day*/,
30106  0 /*until_time_code (0/15)*/,
30107  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30108  },
30109 
30110 };
30111 
30112 static const char kAtcZoneNameIndian_Chagos[] = "Indian/Chagos";
30113 
30114 const AtcZoneInfo kAtcAllZoneIndian_Chagos = {
30115  kAtcZoneNameIndian_Chagos /*name*/,
30116  0x456f7c3c /*zone_id*/,
30117  &kAtcAllZoneContext /*zone_context*/,
30118  3 /*num_eras*/,
30119  kAtcZoneEraIndian_Chagos /*eras*/,
30120  NULL /*target_info*/,
30121 };
30122 
30123 //---------------------------------------------------------------------------
30124 // Zone name: Indian/Maldives
30125 // Zone Eras: 3
30126 //---------------------------------------------------------------------------
30127 
30128 static const AtcZoneEra kAtcZoneEraIndian_Maldives[] = {
30129  // 4:54:00 - LMT 1880
30130  {
30131  NULL /*zone_policy*/,
30132  "LMT" /*format*/,
30133  1176 /*offset_code (17640/15)*/,
30134  0 /*offset_remainder (17640%15)*/,
30135  0 /*delta_minutes*/,
30136  1880 /*until_year*/,
30137  1 /*until_month*/,
30138  1 /*until_day*/,
30139  0 /*until_time_code (0/15)*/,
30140  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30141  },
30142  // 4:54:00 - MMT 1960
30143  {
30144  NULL /*zone_policy*/,
30145  "MMT" /*format*/,
30146  1176 /*offset_code (17640/15)*/,
30147  0 /*offset_remainder (17640%15)*/,
30148  0 /*delta_minutes*/,
30149  1960 /*until_year*/,
30150  1 /*until_month*/,
30151  1 /*until_day*/,
30152  0 /*until_time_code (0/15)*/,
30153  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30154  },
30155  // 5:00 - +05
30156  {
30157  NULL /*zone_policy*/,
30158  "+05" /*format*/,
30159  1200 /*offset_code (18000/15)*/,
30160  0 /*offset_remainder (18000%15)*/,
30161  0 /*delta_minutes*/,
30162  32767 /*until_year*/,
30163  1 /*until_month*/,
30164  1 /*until_day*/,
30165  0 /*until_time_code (0/15)*/,
30166  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30167  },
30168 
30169 };
30170 
30171 static const char kAtcZoneNameIndian_Maldives[] = "Indian/Maldives";
30172 
30173 const AtcZoneInfo kAtcAllZoneIndian_Maldives = {
30174  kAtcZoneNameIndian_Maldives /*name*/,
30175  0x9869681c /*zone_id*/,
30176  &kAtcAllZoneContext /*zone_context*/,
30177  3 /*num_eras*/,
30178  kAtcZoneEraIndian_Maldives /*eras*/,
30179  NULL /*target_info*/,
30180 };
30181 
30182 //---------------------------------------------------------------------------
30183 // Zone name: Indian/Mauritius
30184 // Zone Eras: 2
30185 //---------------------------------------------------------------------------
30186 
30187 static const AtcZoneEra kAtcZoneEraIndian_Mauritius[] = {
30188  // 3:50:00 - LMT 1907
30189  {
30190  NULL /*zone_policy*/,
30191  "LMT" /*format*/,
30192  920 /*offset_code (13800/15)*/,
30193  0 /*offset_remainder (13800%15)*/,
30194  0 /*delta_minutes*/,
30195  1907 /*until_year*/,
30196  1 /*until_month*/,
30197  1 /*until_day*/,
30198  0 /*until_time_code (0/15)*/,
30199  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30200  },
30201  // 4:00 Mauritius +04/+05
30202  {
30203  &kAtcAllZonePolicyMauritius /*zone_policy*/,
30204  "+04/+05" /*format*/,
30205  960 /*offset_code (14400/15)*/,
30206  0 /*offset_remainder (14400%15)*/,
30207  0 /*delta_minutes*/,
30208  32767 /*until_year*/,
30209  1 /*until_month*/,
30210  1 /*until_day*/,
30211  0 /*until_time_code (0/15)*/,
30212  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30213  },
30214 
30215 };
30216 
30217 static const char kAtcZoneNameIndian_Mauritius[] = "Indian/Mauritius";
30218 
30219 const AtcZoneInfo kAtcAllZoneIndian_Mauritius = {
30220  kAtcZoneNameIndian_Mauritius /*name*/,
30221  0x7b09c02a /*zone_id*/,
30222  &kAtcAllZoneContext /*zone_context*/,
30223  2 /*num_eras*/,
30224  kAtcZoneEraIndian_Mauritius /*eras*/,
30225  NULL /*target_info*/,
30226 };
30227 
30228 //---------------------------------------------------------------------------
30229 // Zone name: MET
30230 // Zone Eras: 1
30231 //---------------------------------------------------------------------------
30232 
30233 static const AtcZoneEra kAtcZoneEraMET[] = {
30234  // 1:00 C-Eur ME%sT
30235  {
30236  &kAtcAllZonePolicyC_Eur /*zone_policy*/,
30237  "ME%T" /*format*/,
30238  240 /*offset_code (3600/15)*/,
30239  0 /*offset_remainder (3600%15)*/,
30240  0 /*delta_minutes*/,
30241  32767 /*until_year*/,
30242  1 /*until_month*/,
30243  1 /*until_day*/,
30244  0 /*until_time_code (0/15)*/,
30245  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30246  },
30247 
30248 };
30249 
30250 static const char kAtcZoneNameMET[] = "MET";
30251 
30252 const AtcZoneInfo kAtcAllZoneMET = {
30253  kAtcZoneNameMET /*name*/,
30254  0x0b8803ab /*zone_id*/,
30255  &kAtcAllZoneContext /*zone_context*/,
30256  1 /*num_eras*/,
30257  kAtcZoneEraMET /*eras*/,
30258  NULL /*target_info*/,
30259 };
30260 
30261 //---------------------------------------------------------------------------
30262 // Zone name: MST
30263 // Zone Eras: 1
30264 //---------------------------------------------------------------------------
30265 
30266 static const AtcZoneEra kAtcZoneEraMST[] = {
30267  // -7:00 - MST
30268  {
30269  NULL /*zone_policy*/,
30270  "MST" /*format*/,
30271  -1680 /*offset_code (-25200/15)*/,
30272  0 /*offset_remainder (-25200%15)*/,
30273  0 /*delta_minutes*/,
30274  32767 /*until_year*/,
30275  1 /*until_month*/,
30276  1 /*until_day*/,
30277  0 /*until_time_code (0/15)*/,
30278  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30279  },
30280 
30281 };
30282 
30283 static const char kAtcZoneNameMST[] = "MST";
30284 
30285 const AtcZoneInfo kAtcAllZoneMST = {
30286  kAtcZoneNameMST /*name*/,
30287  0x0b880579 /*zone_id*/,
30288  &kAtcAllZoneContext /*zone_context*/,
30289  1 /*num_eras*/,
30290  kAtcZoneEraMST /*eras*/,
30291  NULL /*target_info*/,
30292 };
30293 
30294 //---------------------------------------------------------------------------
30295 // Zone name: MST7MDT
30296 // Zone Eras: 1
30297 //---------------------------------------------------------------------------
30298 
30299 static const AtcZoneEra kAtcZoneEraMST7MDT[] = {
30300  // -7:00 US M%sT
30301  {
30302  &kAtcAllZonePolicyUS /*zone_policy*/,
30303  "M%T" /*format*/,
30304  -1680 /*offset_code (-25200/15)*/,
30305  0 /*offset_remainder (-25200%15)*/,
30306  0 /*delta_minutes*/,
30307  32767 /*until_year*/,
30308  1 /*until_month*/,
30309  1 /*until_day*/,
30310  0 /*until_time_code (0/15)*/,
30311  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30312  },
30313 
30314 };
30315 
30316 static const char kAtcZoneNameMST7MDT[] = "MST7MDT";
30317 
30318 const AtcZoneInfo kAtcAllZoneMST7MDT = {
30319  kAtcZoneNameMST7MDT /*name*/,
30320  0xf2af9375 /*zone_id*/,
30321  &kAtcAllZoneContext /*zone_context*/,
30322  1 /*num_eras*/,
30323  kAtcZoneEraMST7MDT /*eras*/,
30324  NULL /*target_info*/,
30325 };
30326 
30327 //---------------------------------------------------------------------------
30328 // Zone name: PST8PDT
30329 // Zone Eras: 1
30330 //---------------------------------------------------------------------------
30331 
30332 static const AtcZoneEra kAtcZoneEraPST8PDT[] = {
30333  // -8:00 US P%sT
30334  {
30335  &kAtcAllZonePolicyUS /*zone_policy*/,
30336  "P%T" /*format*/,
30337  -1920 /*offset_code (-28800/15)*/,
30338  0 /*offset_remainder (-28800%15)*/,
30339  0 /*delta_minutes*/,
30340  32767 /*until_year*/,
30341  1 /*until_month*/,
30342  1 /*until_day*/,
30343  0 /*until_time_code (0/15)*/,
30344  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30345  },
30346 
30347 };
30348 
30349 static const char kAtcZoneNamePST8PDT[] = "PST8PDT";
30350 
30351 const AtcZoneInfo kAtcAllZonePST8PDT = {
30352  kAtcZoneNamePST8PDT /*name*/,
30353  0xd99ee2dc /*zone_id*/,
30354  &kAtcAllZoneContext /*zone_context*/,
30355  1 /*num_eras*/,
30356  kAtcZoneEraPST8PDT /*eras*/,
30357  NULL /*target_info*/,
30358 };
30359 
30360 //---------------------------------------------------------------------------
30361 // Zone name: Pacific/Apia
30362 // Zone Eras: 5
30363 //---------------------------------------------------------------------------
30364 
30365 static const AtcZoneEra kAtcZoneEraPacific_Apia[] = {
30366  // 12:33:04 - LMT 1892 Jul 5
30367  {
30368  NULL /*zone_policy*/,
30369  "LMT" /*format*/,
30370  3012 /*offset_code (45184/15)*/,
30371  4 /*offset_remainder (45184%15)*/,
30372  0 /*delta_minutes*/,
30373  1892 /*until_year*/,
30374  7 /*until_month*/,
30375  5 /*until_day*/,
30376  0 /*until_time_code (0/15)*/,
30377  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30378  },
30379  // -11:26:56 - LMT 1911
30380  {
30381  NULL /*zone_policy*/,
30382  "LMT" /*format*/,
30383  -2748 /*offset_code (-41216/15)*/,
30384  4 /*offset_remainder (-41216%15)*/,
30385  0 /*delta_minutes*/,
30386  1911 /*until_year*/,
30387  1 /*until_month*/,
30388  1 /*until_day*/,
30389  0 /*until_time_code (0/15)*/,
30390  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30391  },
30392  // -11:30 - -1130 1950
30393  {
30394  NULL /*zone_policy*/,
30395  "-1130" /*format*/,
30396  -2760 /*offset_code (-41400/15)*/,
30397  0 /*offset_remainder (-41400%15)*/,
30398  0 /*delta_minutes*/,
30399  1950 /*until_year*/,
30400  1 /*until_month*/,
30401  1 /*until_day*/,
30402  0 /*until_time_code (0/15)*/,
30403  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30404  },
30405  // -11:00 WS -11/-10 2011 Dec 29 24:00
30406  {
30407  &kAtcAllZonePolicyWS /*zone_policy*/,
30408  "-11/-10" /*format*/,
30409  -2640 /*offset_code (-39600/15)*/,
30410  0 /*offset_remainder (-39600%15)*/,
30411  0 /*delta_minutes*/,
30412  2011 /*until_year*/,
30413  12 /*until_month*/,
30414  29 /*until_day*/,
30415  5760 /*until_time_code (86400/15)*/,
30416  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30417  },
30418  // 13:00 WS +13/+14
30419  {
30420  &kAtcAllZonePolicyWS /*zone_policy*/,
30421  "+13/+14" /*format*/,
30422  3120 /*offset_code (46800/15)*/,
30423  0 /*offset_remainder (46800%15)*/,
30424  0 /*delta_minutes*/,
30425  32767 /*until_year*/,
30426  1 /*until_month*/,
30427  1 /*until_day*/,
30428  0 /*until_time_code (0/15)*/,
30429  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30430  },
30431 
30432 };
30433 
30434 static const char kAtcZoneNamePacific_Apia[] = "Pacific/Apia";
30435 
30436 const AtcZoneInfo kAtcAllZonePacific_Apia = {
30437  kAtcZoneNamePacific_Apia /*name*/,
30438  0x23359b5e /*zone_id*/,
30439  &kAtcAllZoneContext /*zone_context*/,
30440  5 /*num_eras*/,
30441  kAtcZoneEraPacific_Apia /*eras*/,
30442  NULL /*target_info*/,
30443 };
30444 
30445 //---------------------------------------------------------------------------
30446 // Zone name: Pacific/Auckland
30447 // Zone Eras: 3
30448 //---------------------------------------------------------------------------
30449 
30450 static const AtcZoneEra kAtcZoneEraPacific_Auckland[] = {
30451  // 11:39:04 - LMT 1868 Nov 2
30452  {
30453  NULL /*zone_policy*/,
30454  "LMT" /*format*/,
30455  2796 /*offset_code (41944/15)*/,
30456  4 /*offset_remainder (41944%15)*/,
30457  0 /*delta_minutes*/,
30458  1868 /*until_year*/,
30459  11 /*until_month*/,
30460  2 /*until_day*/,
30461  0 /*until_time_code (0/15)*/,
30462  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30463  },
30464  // 11:30 NZ NZ%sT 1946 Jan 1
30465  {
30466  &kAtcAllZonePolicyNZ /*zone_policy*/,
30467  "NZ%T" /*format*/,
30468  2760 /*offset_code (41400/15)*/,
30469  0 /*offset_remainder (41400%15)*/,
30470  0 /*delta_minutes*/,
30471  1946 /*until_year*/,
30472  1 /*until_month*/,
30473  1 /*until_day*/,
30474  0 /*until_time_code (0/15)*/,
30475  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30476  },
30477  // 12:00 NZ NZ%sT
30478  {
30479  &kAtcAllZonePolicyNZ /*zone_policy*/,
30480  "NZ%T" /*format*/,
30481  2880 /*offset_code (43200/15)*/,
30482  0 /*offset_remainder (43200%15)*/,
30483  0 /*delta_minutes*/,
30484  32767 /*until_year*/,
30485  1 /*until_month*/,
30486  1 /*until_day*/,
30487  0 /*until_time_code (0/15)*/,
30488  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30489  },
30490 
30491 };
30492 
30493 static const char kAtcZoneNamePacific_Auckland[] = "Pacific/Auckland";
30494 
30495 const AtcZoneInfo kAtcAllZonePacific_Auckland = {
30496  kAtcZoneNamePacific_Auckland /*name*/,
30497  0x25062f86 /*zone_id*/,
30498  &kAtcAllZoneContext /*zone_context*/,
30499  3 /*num_eras*/,
30500  kAtcZoneEraPacific_Auckland /*eras*/,
30501  NULL /*target_info*/,
30502 };
30503 
30504 //---------------------------------------------------------------------------
30505 // Zone name: Pacific/Bougainville
30506 // Zone Eras: 6
30507 //---------------------------------------------------------------------------
30508 
30509 static const AtcZoneEra kAtcZoneEraPacific_Bougainville[] = {
30510  // 10:22:16 - LMT 1880
30511  {
30512  NULL /*zone_policy*/,
30513  "LMT" /*format*/,
30514  2489 /*offset_code (37336/15)*/,
30515  1 /*offset_remainder (37336%15)*/,
30516  0 /*delta_minutes*/,
30517  1880 /*until_year*/,
30518  1 /*until_month*/,
30519  1 /*until_day*/,
30520  0 /*until_time_code (0/15)*/,
30521  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30522  },
30523  // 9:48:32 - PMMT 1895
30524  {
30525  NULL /*zone_policy*/,
30526  "PMMT" /*format*/,
30527  2354 /*offset_code (35312/15)*/,
30528  2 /*offset_remainder (35312%15)*/,
30529  0 /*delta_minutes*/,
30530  1895 /*until_year*/,
30531  1 /*until_month*/,
30532  1 /*until_day*/,
30533  0 /*until_time_code (0/15)*/,
30534  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30535  },
30536  // 10:00 - +10 1942 Jul
30537  {
30538  NULL /*zone_policy*/,
30539  "+10" /*format*/,
30540  2400 /*offset_code (36000/15)*/,
30541  0 /*offset_remainder (36000%15)*/,
30542  0 /*delta_minutes*/,
30543  1942 /*until_year*/,
30544  7 /*until_month*/,
30545  1 /*until_day*/,
30546  0 /*until_time_code (0/15)*/,
30547  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30548  },
30549  // 9:00 - +09 1945 Aug 21
30550  {
30551  NULL /*zone_policy*/,
30552  "+09" /*format*/,
30553  2160 /*offset_code (32400/15)*/,
30554  0 /*offset_remainder (32400%15)*/,
30555  0 /*delta_minutes*/,
30556  1945 /*until_year*/,
30557  8 /*until_month*/,
30558  21 /*until_day*/,
30559  0 /*until_time_code (0/15)*/,
30560  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30561  },
30562  // 10:00 - +10 2014 Dec 28 2:00
30563  {
30564  NULL /*zone_policy*/,
30565  "+10" /*format*/,
30566  2400 /*offset_code (36000/15)*/,
30567  0 /*offset_remainder (36000%15)*/,
30568  0 /*delta_minutes*/,
30569  2014 /*until_year*/,
30570  12 /*until_month*/,
30571  28 /*until_day*/,
30572  480 /*until_time_code (7200/15)*/,
30573  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30574  },
30575  // 11:00 - +11
30576  {
30577  NULL /*zone_policy*/,
30578  "+11" /*format*/,
30579  2640 /*offset_code (39600/15)*/,
30580  0 /*offset_remainder (39600%15)*/,
30581  0 /*delta_minutes*/,
30582  32767 /*until_year*/,
30583  1 /*until_month*/,
30584  1 /*until_day*/,
30585  0 /*until_time_code (0/15)*/,
30586  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30587  },
30588 
30589 };
30590 
30591 static const char kAtcZoneNamePacific_Bougainville[] = "Pacific/Bougainville";
30592 
30593 const AtcZoneInfo kAtcAllZonePacific_Bougainville = {
30594  kAtcZoneNamePacific_Bougainville /*name*/,
30595  0x5e10f7a4 /*zone_id*/,
30596  &kAtcAllZoneContext /*zone_context*/,
30597  6 /*num_eras*/,
30598  kAtcZoneEraPacific_Bougainville /*eras*/,
30599  NULL /*target_info*/,
30600 };
30601 
30602 //---------------------------------------------------------------------------
30603 // Zone name: Pacific/Chatham
30604 // Zone Eras: 3
30605 //---------------------------------------------------------------------------
30606 
30607 static const AtcZoneEra kAtcZoneEraPacific_Chatham[] = {
30608  // 12:13:48 - LMT 1868 Nov 2
30609  {
30610  NULL /*zone_policy*/,
30611  "LMT" /*format*/,
30612  2935 /*offset_code (44028/15)*/,
30613  3 /*offset_remainder (44028%15)*/,
30614  0 /*delta_minutes*/,
30615  1868 /*until_year*/,
30616  11 /*until_month*/,
30617  2 /*until_day*/,
30618  0 /*until_time_code (0/15)*/,
30619  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30620  },
30621  // 12:15 - +1215 1946 Jan 1
30622  {
30623  NULL /*zone_policy*/,
30624  "+1215" /*format*/,
30625  2940 /*offset_code (44100/15)*/,
30626  0 /*offset_remainder (44100%15)*/,
30627  0 /*delta_minutes*/,
30628  1946 /*until_year*/,
30629  1 /*until_month*/,
30630  1 /*until_day*/,
30631  0 /*until_time_code (0/15)*/,
30632  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30633  },
30634  // 12:45 Chatham +1245/+1345
30635  {
30636  &kAtcAllZonePolicyChatham /*zone_policy*/,
30637  "+1245/+1345" /*format*/,
30638  3060 /*offset_code (45900/15)*/,
30639  0 /*offset_remainder (45900%15)*/,
30640  0 /*delta_minutes*/,
30641  32767 /*until_year*/,
30642  1 /*until_month*/,
30643  1 /*until_day*/,
30644  0 /*until_time_code (0/15)*/,
30645  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30646  },
30647 
30648 };
30649 
30650 static const char kAtcZoneNamePacific_Chatham[] = "Pacific/Chatham";
30651 
30652 const AtcZoneInfo kAtcAllZonePacific_Chatham = {
30653  kAtcZoneNamePacific_Chatham /*name*/,
30654  0x2f0de999 /*zone_id*/,
30655  &kAtcAllZoneContext /*zone_context*/,
30656  3 /*num_eras*/,
30657  kAtcZoneEraPacific_Chatham /*eras*/,
30658  NULL /*target_info*/,
30659 };
30660 
30661 //---------------------------------------------------------------------------
30662 // Zone name: Pacific/Easter
30663 // Zone Eras: 4
30664 //---------------------------------------------------------------------------
30665 
30666 static const AtcZoneEra kAtcZoneEraPacific_Easter[] = {
30667  // -7:17:28 - LMT 1890
30668  {
30669  NULL /*zone_policy*/,
30670  "LMT" /*format*/,
30671  -1750 /*offset_code (-26248/15)*/,
30672  2 /*offset_remainder (-26248%15)*/,
30673  0 /*delta_minutes*/,
30674  1890 /*until_year*/,
30675  1 /*until_month*/,
30676  1 /*until_day*/,
30677  0 /*until_time_code (0/15)*/,
30678  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30679  },
30680  // -7:17:28 - EMT 1932 Sep
30681  {
30682  NULL /*zone_policy*/,
30683  "EMT" /*format*/,
30684  -1750 /*offset_code (-26248/15)*/,
30685  2 /*offset_remainder (-26248%15)*/,
30686  0 /*delta_minutes*/,
30687  1932 /*until_year*/,
30688  9 /*until_month*/,
30689  1 /*until_day*/,
30690  0 /*until_time_code (0/15)*/,
30691  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30692  },
30693  // -7:00 Chile -07/-06 1982 Mar 14 3:00u
30694  {
30695  &kAtcAllZonePolicyChile /*zone_policy*/,
30696  "-07/-06" /*format*/,
30697  -1680 /*offset_code (-25200/15)*/,
30698  0 /*offset_remainder (-25200%15)*/,
30699  0 /*delta_minutes*/,
30700  1982 /*until_year*/,
30701  3 /*until_month*/,
30702  14 /*until_day*/,
30703  720 /*until_time_code (10800/15)*/,
30704  32 /*until_time_modifier (kAtcSuffixU + seconds=0)*/,
30705  },
30706  // -6:00 Chile -06/-05
30707  {
30708  &kAtcAllZonePolicyChile /*zone_policy*/,
30709  "-06/-05" /*format*/,
30710  -1440 /*offset_code (-21600/15)*/,
30711  0 /*offset_remainder (-21600%15)*/,
30712  0 /*delta_minutes*/,
30713  32767 /*until_year*/,
30714  1 /*until_month*/,
30715  1 /*until_day*/,
30716  0 /*until_time_code (0/15)*/,
30717  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30718  },
30719 
30720 };
30721 
30722 static const char kAtcZoneNamePacific_Easter[] = "Pacific/Easter";
30723 
30724 const AtcZoneInfo kAtcAllZonePacific_Easter = {
30725  kAtcZoneNamePacific_Easter /*name*/,
30726  0xcf54f7e7 /*zone_id*/,
30727  &kAtcAllZoneContext /*zone_context*/,
30728  4 /*num_eras*/,
30729  kAtcZoneEraPacific_Easter /*eras*/,
30730  NULL /*target_info*/,
30731 };
30732 
30733 //---------------------------------------------------------------------------
30734 // Zone name: Pacific/Efate
30735 // Zone Eras: 2
30736 //---------------------------------------------------------------------------
30737 
30738 static const AtcZoneEra kAtcZoneEraPacific_Efate[] = {
30739  // 11:13:16 - LMT 1912 Jan 13
30740  {
30741  NULL /*zone_policy*/,
30742  "LMT" /*format*/,
30743  2693 /*offset_code (40396/15)*/,
30744  1 /*offset_remainder (40396%15)*/,
30745  0 /*delta_minutes*/,
30746  1912 /*until_year*/,
30747  1 /*until_month*/,
30748  13 /*until_day*/,
30749  0 /*until_time_code (0/15)*/,
30750  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30751  },
30752  // 11:00 Vanuatu +11/+12
30753  {
30754  &kAtcAllZonePolicyVanuatu /*zone_policy*/,
30755  "+11/+12" /*format*/,
30756  2640 /*offset_code (39600/15)*/,
30757  0 /*offset_remainder (39600%15)*/,
30758  0 /*delta_minutes*/,
30759  32767 /*until_year*/,
30760  1 /*until_month*/,
30761  1 /*until_day*/,
30762  0 /*until_time_code (0/15)*/,
30763  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30764  },
30765 
30766 };
30767 
30768 static const char kAtcZoneNamePacific_Efate[] = "Pacific/Efate";
30769 
30770 const AtcZoneInfo kAtcAllZonePacific_Efate = {
30771  kAtcZoneNamePacific_Efate /*name*/,
30772  0x8a2bce28 /*zone_id*/,
30773  &kAtcAllZoneContext /*zone_context*/,
30774  2 /*num_eras*/,
30775  kAtcZoneEraPacific_Efate /*eras*/,
30776  NULL /*target_info*/,
30777 };
30778 
30779 //---------------------------------------------------------------------------
30780 // Zone name: Pacific/Fakaofo
30781 // Zone Eras: 3
30782 //---------------------------------------------------------------------------
30783 
30784 static const AtcZoneEra kAtcZoneEraPacific_Fakaofo[] = {
30785  // -11:24:56 - LMT 1901
30786  {
30787  NULL /*zone_policy*/,
30788  "LMT" /*format*/,
30789  -2740 /*offset_code (-41096/15)*/,
30790  4 /*offset_remainder (-41096%15)*/,
30791  0 /*delta_minutes*/,
30792  1901 /*until_year*/,
30793  1 /*until_month*/,
30794  1 /*until_day*/,
30795  0 /*until_time_code (0/15)*/,
30796  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30797  },
30798  // -11:00 - -11 2011 Dec 30
30799  {
30800  NULL /*zone_policy*/,
30801  "-11" /*format*/,
30802  -2640 /*offset_code (-39600/15)*/,
30803  0 /*offset_remainder (-39600%15)*/,
30804  0 /*delta_minutes*/,
30805  2011 /*until_year*/,
30806  12 /*until_month*/,
30807  30 /*until_day*/,
30808  0 /*until_time_code (0/15)*/,
30809  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30810  },
30811  // 13:00 - +13
30812  {
30813  NULL /*zone_policy*/,
30814  "+13" /*format*/,
30815  3120 /*offset_code (46800/15)*/,
30816  0 /*offset_remainder (46800%15)*/,
30817  0 /*delta_minutes*/,
30818  32767 /*until_year*/,
30819  1 /*until_month*/,
30820  1 /*until_day*/,
30821  0 /*until_time_code (0/15)*/,
30822  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30823  },
30824 
30825 };
30826 
30827 static const char kAtcZoneNamePacific_Fakaofo[] = "Pacific/Fakaofo";
30828 
30829 const AtcZoneInfo kAtcAllZonePacific_Fakaofo = {
30830  kAtcZoneNamePacific_Fakaofo /*name*/,
30831  0x06532bba /*zone_id*/,
30832  &kAtcAllZoneContext /*zone_context*/,
30833  3 /*num_eras*/,
30834  kAtcZoneEraPacific_Fakaofo /*eras*/,
30835  NULL /*target_info*/,
30836 };
30837 
30838 //---------------------------------------------------------------------------
30839 // Zone name: Pacific/Fiji
30840 // Zone Eras: 2
30841 //---------------------------------------------------------------------------
30842 
30843 static const AtcZoneEra kAtcZoneEraPacific_Fiji[] = {
30844  // 11:55:44 - LMT 1915 Oct 26
30845  {
30846  NULL /*zone_policy*/,
30847  "LMT" /*format*/,
30848  2862 /*offset_code (42944/15)*/,
30849  14 /*offset_remainder (42944%15)*/,
30850  0 /*delta_minutes*/,
30851  1915 /*until_year*/,
30852  10 /*until_month*/,
30853  26 /*until_day*/,
30854  0 /*until_time_code (0/15)*/,
30855  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30856  },
30857  // 12:00 Fiji +12/+13
30858  {
30859  &kAtcAllZonePolicyFiji /*zone_policy*/,
30860  "+12/+13" /*format*/,
30861  2880 /*offset_code (43200/15)*/,
30862  0 /*offset_remainder (43200%15)*/,
30863  0 /*delta_minutes*/,
30864  32767 /*until_year*/,
30865  1 /*until_month*/,
30866  1 /*until_day*/,
30867  0 /*until_time_code (0/15)*/,
30868  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30869  },
30870 
30871 };
30872 
30873 static const char kAtcZoneNamePacific_Fiji[] = "Pacific/Fiji";
30874 
30875 const AtcZoneInfo kAtcAllZonePacific_Fiji = {
30876  kAtcZoneNamePacific_Fiji /*name*/,
30877  0x23383ba5 /*zone_id*/,
30878  &kAtcAllZoneContext /*zone_context*/,
30879  2 /*num_eras*/,
30880  kAtcZoneEraPacific_Fiji /*eras*/,
30881  NULL /*target_info*/,
30882 };
30883 
30884 //---------------------------------------------------------------------------
30885 // Zone name: Pacific/Galapagos
30886 // Zone Eras: 3
30887 //---------------------------------------------------------------------------
30888 
30889 static const AtcZoneEra kAtcZoneEraPacific_Galapagos[] = {
30890  // -5:58:24 - LMT 1931
30891  {
30892  NULL /*zone_policy*/,
30893  "LMT" /*format*/,
30894  -1434 /*offset_code (-21504/15)*/,
30895  6 /*offset_remainder (-21504%15)*/,
30896  0 /*delta_minutes*/,
30897  1931 /*until_year*/,
30898  1 /*until_month*/,
30899  1 /*until_day*/,
30900  0 /*until_time_code (0/15)*/,
30901  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30902  },
30903  // -5:00 - -05 1986
30904  {
30905  NULL /*zone_policy*/,
30906  "-05" /*format*/,
30907  -1200 /*offset_code (-18000/15)*/,
30908  0 /*offset_remainder (-18000%15)*/,
30909  0 /*delta_minutes*/,
30910  1986 /*until_year*/,
30911  1 /*until_month*/,
30912  1 /*until_day*/,
30913  0 /*until_time_code (0/15)*/,
30914  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30915  },
30916  // -6:00 Ecuador -06/-05
30917  {
30918  &kAtcAllZonePolicyEcuador /*zone_policy*/,
30919  "-06/-05" /*format*/,
30920  -1440 /*offset_code (-21600/15)*/,
30921  0 /*offset_remainder (-21600%15)*/,
30922  0 /*delta_minutes*/,
30923  32767 /*until_year*/,
30924  1 /*until_month*/,
30925  1 /*until_day*/,
30926  0 /*until_time_code (0/15)*/,
30927  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30928  },
30929 
30930 };
30931 
30932 static const char kAtcZoneNamePacific_Galapagos[] = "Pacific/Galapagos";
30933 
30934 const AtcZoneInfo kAtcAllZonePacific_Galapagos = {
30935  kAtcZoneNamePacific_Galapagos /*name*/,
30936  0xa952f752 /*zone_id*/,
30937  &kAtcAllZoneContext /*zone_context*/,
30938  3 /*num_eras*/,
30939  kAtcZoneEraPacific_Galapagos /*eras*/,
30940  NULL /*target_info*/,
30941 };
30942 
30943 //---------------------------------------------------------------------------
30944 // Zone name: Pacific/Gambier
30945 // Zone Eras: 2
30946 //---------------------------------------------------------------------------
30947 
30948 static const AtcZoneEra kAtcZoneEraPacific_Gambier[] = {
30949  // -8:59:48 - LMT 1912 Oct
30950  {
30951  NULL /*zone_policy*/,
30952  "LMT" /*format*/,
30953  -2160 /*offset_code (-32388/15)*/,
30954  12 /*offset_remainder (-32388%15)*/,
30955  0 /*delta_minutes*/,
30956  1912 /*until_year*/,
30957  10 /*until_month*/,
30958  1 /*until_day*/,
30959  0 /*until_time_code (0/15)*/,
30960  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30961  },
30962  // -9:00 - -09
30963  {
30964  NULL /*zone_policy*/,
30965  "-09" /*format*/,
30966  -2160 /*offset_code (-32400/15)*/,
30967  0 /*offset_remainder (-32400%15)*/,
30968  0 /*delta_minutes*/,
30969  32767 /*until_year*/,
30970  1 /*until_month*/,
30971  1 /*until_day*/,
30972  0 /*until_time_code (0/15)*/,
30973  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
30974  },
30975 
30976 };
30977 
30978 static const char kAtcZoneNamePacific_Gambier[] = "Pacific/Gambier";
30979 
30980 const AtcZoneInfo kAtcAllZonePacific_Gambier = {
30981  kAtcZoneNamePacific_Gambier /*name*/,
30982  0x53720c3a /*zone_id*/,
30983  &kAtcAllZoneContext /*zone_context*/,
30984  2 /*num_eras*/,
30985  kAtcZoneEraPacific_Gambier /*eras*/,
30986  NULL /*target_info*/,
30987 };
30988 
30989 //---------------------------------------------------------------------------
30990 // Zone name: Pacific/Guadalcanal
30991 // Zone Eras: 2
30992 //---------------------------------------------------------------------------
30993 
30994 static const AtcZoneEra kAtcZoneEraPacific_Guadalcanal[] = {
30995  // 10:39:48 - LMT 1912 Oct
30996  {
30997  NULL /*zone_policy*/,
30998  "LMT" /*format*/,
30999  2559 /*offset_code (38388/15)*/,
31000  3 /*offset_remainder (38388%15)*/,
31001  0 /*delta_minutes*/,
31002  1912 /*until_year*/,
31003  10 /*until_month*/,
31004  1 /*until_day*/,
31005  0 /*until_time_code (0/15)*/,
31006  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31007  },
31008  // 11:00 - +11
31009  {
31010  NULL /*zone_policy*/,
31011  "+11" /*format*/,
31012  2640 /*offset_code (39600/15)*/,
31013  0 /*offset_remainder (39600%15)*/,
31014  0 /*delta_minutes*/,
31015  32767 /*until_year*/,
31016  1 /*until_month*/,
31017  1 /*until_day*/,
31018  0 /*until_time_code (0/15)*/,
31019  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31020  },
31021 
31022 };
31023 
31024 static const char kAtcZoneNamePacific_Guadalcanal[] = "Pacific/Guadalcanal";
31025 
31026 const AtcZoneInfo kAtcAllZonePacific_Guadalcanal = {
31027  kAtcZoneNamePacific_Guadalcanal /*name*/,
31028  0xf4dd25f0 /*zone_id*/,
31029  &kAtcAllZoneContext /*zone_context*/,
31030  2 /*num_eras*/,
31031  kAtcZoneEraPacific_Guadalcanal /*eras*/,
31032  NULL /*target_info*/,
31033 };
31034 
31035 //---------------------------------------------------------------------------
31036 // Zone name: Pacific/Guam
31037 // Zone Eras: 6
31038 //---------------------------------------------------------------------------
31039 
31040 static const AtcZoneEra kAtcZoneEraPacific_Guam[] = {
31041  // -14:21:00 - LMT 1844 Dec 31
31042  {
31043  NULL /*zone_policy*/,
31044  "LMT" /*format*/,
31045  -3444 /*offset_code (-51660/15)*/,
31046  0 /*offset_remainder (-51660%15)*/,
31047  0 /*delta_minutes*/,
31048  1844 /*until_year*/,
31049  12 /*until_month*/,
31050  31 /*until_day*/,
31051  0 /*until_time_code (0/15)*/,
31052  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31053  },
31054  // 9:39:00 - LMT 1901
31055  {
31056  NULL /*zone_policy*/,
31057  "LMT" /*format*/,
31058  2316 /*offset_code (34740/15)*/,
31059  0 /*offset_remainder (34740%15)*/,
31060  0 /*delta_minutes*/,
31061  1901 /*until_year*/,
31062  1 /*until_month*/,
31063  1 /*until_day*/,
31064  0 /*until_time_code (0/15)*/,
31065  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31066  },
31067  // 10:00 - GST 1941 Dec 10
31068  {
31069  NULL /*zone_policy*/,
31070  "GST" /*format*/,
31071  2400 /*offset_code (36000/15)*/,
31072  0 /*offset_remainder (36000%15)*/,
31073  0 /*delta_minutes*/,
31074  1941 /*until_year*/,
31075  12 /*until_month*/,
31076  10 /*until_day*/,
31077  0 /*until_time_code (0/15)*/,
31078  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31079  },
31080  // 9:00 - +09 1944 Jul 31
31081  {
31082  NULL /*zone_policy*/,
31083  "+09" /*format*/,
31084  2160 /*offset_code (32400/15)*/,
31085  0 /*offset_remainder (32400%15)*/,
31086  0 /*delta_minutes*/,
31087  1944 /*until_year*/,
31088  7 /*until_month*/,
31089  31 /*until_day*/,
31090  0 /*until_time_code (0/15)*/,
31091  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31092  },
31093  // 10:00 Guam G%sT 2000 Dec 23
31094  {
31095  &kAtcAllZonePolicyGuam /*zone_policy*/,
31096  "G%T" /*format*/,
31097  2400 /*offset_code (36000/15)*/,
31098  0 /*offset_remainder (36000%15)*/,
31099  0 /*delta_minutes*/,
31100  2000 /*until_year*/,
31101  12 /*until_month*/,
31102  23 /*until_day*/,
31103  0 /*until_time_code (0/15)*/,
31104  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31105  },
31106  // 10:00 - ChST
31107  {
31108  NULL /*zone_policy*/,
31109  "ChST" /*format*/,
31110  2400 /*offset_code (36000/15)*/,
31111  0 /*offset_remainder (36000%15)*/,
31112  0 /*delta_minutes*/,
31113  32767 /*until_year*/,
31114  1 /*until_month*/,
31115  1 /*until_day*/,
31116  0 /*until_time_code (0/15)*/,
31117  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31118  },
31119 
31120 };
31121 
31122 static const char kAtcZoneNamePacific_Guam[] = "Pacific/Guam";
31123 
31124 const AtcZoneInfo kAtcAllZonePacific_Guam = {
31125  kAtcZoneNamePacific_Guam /*name*/,
31126  0x2338f9ed /*zone_id*/,
31127  &kAtcAllZoneContext /*zone_context*/,
31128  6 /*num_eras*/,
31129  kAtcZoneEraPacific_Guam /*eras*/,
31130  NULL /*target_info*/,
31131 };
31132 
31133 //---------------------------------------------------------------------------
31134 // Zone name: Pacific/Honolulu
31135 // Zone Eras: 5
31136 //---------------------------------------------------------------------------
31137 
31138 static const AtcZoneEra kAtcZoneEraPacific_Honolulu[] = {
31139  // -10:31:26 - LMT 1896 Jan 13 12:00
31140  {
31141  NULL /*zone_policy*/,
31142  "LMT" /*format*/,
31143  -2526 /*offset_code (-37886/15)*/,
31144  4 /*offset_remainder (-37886%15)*/,
31145  0 /*delta_minutes*/,
31146  1896 /*until_year*/,
31147  1 /*until_month*/,
31148  13 /*until_day*/,
31149  2880 /*until_time_code (43200/15)*/,
31150  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31151  },
31152  // -10:30 - HST 1933 Apr 30 2:00
31153  {
31154  NULL /*zone_policy*/,
31155  "HST" /*format*/,
31156  -2520 /*offset_code (-37800/15)*/,
31157  0 /*offset_remainder (-37800%15)*/,
31158  0 /*delta_minutes*/,
31159  1933 /*until_year*/,
31160  4 /*until_month*/,
31161  30 /*until_day*/,
31162  480 /*until_time_code (7200/15)*/,
31163  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31164  },
31165  // -10:30 1:00 HDT 1933 May 21 12:00
31166  {
31167  NULL /*zone_policy*/,
31168  "HDT" /*format*/,
31169  -2520 /*offset_code (-37800/15)*/,
31170  0 /*offset_remainder (-37800%15)*/,
31171  60 /*delta_minutes*/,
31172  1933 /*until_year*/,
31173  5 /*until_month*/,
31174  21 /*until_day*/,
31175  2880 /*until_time_code (43200/15)*/,
31176  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31177  },
31178  // -10:30 US H%sT 1947 Jun 8 2:00
31179  {
31180  &kAtcAllZonePolicyUS /*zone_policy*/,
31181  "H%T" /*format*/,
31182  -2520 /*offset_code (-37800/15)*/,
31183  0 /*offset_remainder (-37800%15)*/,
31184  0 /*delta_minutes*/,
31185  1947 /*until_year*/,
31186  6 /*until_month*/,
31187  8 /*until_day*/,
31188  480 /*until_time_code (7200/15)*/,
31189  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31190  },
31191  // -10:00 - HST
31192  {
31193  NULL /*zone_policy*/,
31194  "HST" /*format*/,
31195  -2400 /*offset_code (-36000/15)*/,
31196  0 /*offset_remainder (-36000%15)*/,
31197  0 /*delta_minutes*/,
31198  32767 /*until_year*/,
31199  1 /*until_month*/,
31200  1 /*until_day*/,
31201  0 /*until_time_code (0/15)*/,
31202  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31203  },
31204 
31205 };
31206 
31207 static const char kAtcZoneNamePacific_Honolulu[] = "Pacific/Honolulu";
31208 
31209 const AtcZoneInfo kAtcAllZonePacific_Honolulu = {
31210  kAtcZoneNamePacific_Honolulu /*name*/,
31211  0xe6e70af9 /*zone_id*/,
31212  &kAtcAllZoneContext /*zone_context*/,
31213  5 /*num_eras*/,
31214  kAtcZoneEraPacific_Honolulu /*eras*/,
31215  NULL /*target_info*/,
31216 };
31217 
31218 //---------------------------------------------------------------------------
31219 // Zone name: Pacific/Kanton
31220 // Zone Eras: 4
31221 //---------------------------------------------------------------------------
31222 
31223 static const AtcZoneEra kAtcZoneEraPacific_Kanton[] = {
31224  // 0 - -00 1937 Aug 31
31225  {
31226  NULL /*zone_policy*/,
31227  "-00" /*format*/,
31228  0 /*offset_code (0/15)*/,
31229  0 /*offset_remainder (0%15)*/,
31230  0 /*delta_minutes*/,
31231  1937 /*until_year*/,
31232  8 /*until_month*/,
31233  31 /*until_day*/,
31234  0 /*until_time_code (0/15)*/,
31235  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31236  },
31237  // -12:00 - -12 1979 Oct
31238  {
31239  NULL /*zone_policy*/,
31240  "-12" /*format*/,
31241  -2880 /*offset_code (-43200/15)*/,
31242  0 /*offset_remainder (-43200%15)*/,
31243  0 /*delta_minutes*/,
31244  1979 /*until_year*/,
31245  10 /*until_month*/,
31246  1 /*until_day*/,
31247  0 /*until_time_code (0/15)*/,
31248  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31249  },
31250  // -11:00 - -11 1994 Dec 31
31251  {
31252  NULL /*zone_policy*/,
31253  "-11" /*format*/,
31254  -2640 /*offset_code (-39600/15)*/,
31255  0 /*offset_remainder (-39600%15)*/,
31256  0 /*delta_minutes*/,
31257  1994 /*until_year*/,
31258  12 /*until_month*/,
31259  31 /*until_day*/,
31260  0 /*until_time_code (0/15)*/,
31261  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31262  },
31263  // 13:00 - +13
31264  {
31265  NULL /*zone_policy*/,
31266  "+13" /*format*/,
31267  3120 /*offset_code (46800/15)*/,
31268  0 /*offset_remainder (46800%15)*/,
31269  0 /*delta_minutes*/,
31270  32767 /*until_year*/,
31271  1 /*until_month*/,
31272  1 /*until_day*/,
31273  0 /*until_time_code (0/15)*/,
31274  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31275  },
31276 
31277 };
31278 
31279 static const char kAtcZoneNamePacific_Kanton[] = "Pacific/Kanton";
31280 
31281 const AtcZoneInfo kAtcAllZonePacific_Kanton = {
31282  kAtcZoneNamePacific_Kanton /*name*/,
31283  0xdd512f0e /*zone_id*/,
31284  &kAtcAllZoneContext /*zone_context*/,
31285  4 /*num_eras*/,
31286  kAtcZoneEraPacific_Kanton /*eras*/,
31287  NULL /*target_info*/,
31288 };
31289 
31290 //---------------------------------------------------------------------------
31291 // Zone name: Pacific/Kiritimati
31292 // Zone Eras: 4
31293 //---------------------------------------------------------------------------
31294 
31295 static const AtcZoneEra kAtcZoneEraPacific_Kiritimati[] = {
31296  // -10:29:20 - LMT 1901
31297  {
31298  NULL /*zone_policy*/,
31299  "LMT" /*format*/,
31300  -2518 /*offset_code (-37760/15)*/,
31301  10 /*offset_remainder (-37760%15)*/,
31302  0 /*delta_minutes*/,
31303  1901 /*until_year*/,
31304  1 /*until_month*/,
31305  1 /*until_day*/,
31306  0 /*until_time_code (0/15)*/,
31307  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31308  },
31309  // -10:40 - -1040 1979 Oct
31310  {
31311  NULL /*zone_policy*/,
31312  "-1040" /*format*/,
31313  -2560 /*offset_code (-38400/15)*/,
31314  0 /*offset_remainder (-38400%15)*/,
31315  0 /*delta_minutes*/,
31316  1979 /*until_year*/,
31317  10 /*until_month*/,
31318  1 /*until_day*/,
31319  0 /*until_time_code (0/15)*/,
31320  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31321  },
31322  // -10:00 - -10 1994 Dec 31
31323  {
31324  NULL /*zone_policy*/,
31325  "-10" /*format*/,
31326  -2400 /*offset_code (-36000/15)*/,
31327  0 /*offset_remainder (-36000%15)*/,
31328  0 /*delta_minutes*/,
31329  1994 /*until_year*/,
31330  12 /*until_month*/,
31331  31 /*until_day*/,
31332  0 /*until_time_code (0/15)*/,
31333  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31334  },
31335  // 14:00 - +14
31336  {
31337  NULL /*zone_policy*/,
31338  "+14" /*format*/,
31339  3360 /*offset_code (50400/15)*/,
31340  0 /*offset_remainder (50400%15)*/,
31341  0 /*delta_minutes*/,
31342  32767 /*until_year*/,
31343  1 /*until_month*/,
31344  1 /*until_day*/,
31345  0 /*until_time_code (0/15)*/,
31346  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31347  },
31348 
31349 };
31350 
31351 static const char kAtcZoneNamePacific_Kiritimati[] = "Pacific/Kiritimati";
31352 
31353 const AtcZoneInfo kAtcAllZonePacific_Kiritimati = {
31354  kAtcZoneNamePacific_Kiritimati /*name*/,
31355  0x8305073a /*zone_id*/,
31356  &kAtcAllZoneContext /*zone_context*/,
31357  4 /*num_eras*/,
31358  kAtcZoneEraPacific_Kiritimati /*eras*/,
31359  NULL /*target_info*/,
31360 };
31361 
31362 //---------------------------------------------------------------------------
31363 // Zone name: Pacific/Kosrae
31364 // Zone Eras: 10
31365 //---------------------------------------------------------------------------
31366 
31367 static const AtcZoneEra kAtcZoneEraPacific_Kosrae[] = {
31368  // -13:08:04 - LMT 1844 Dec 31
31369  {
31370  NULL /*zone_policy*/,
31371  "LMT" /*format*/,
31372  -3153 /*offset_code (-47284/15)*/,
31373  11 /*offset_remainder (-47284%15)*/,
31374  0 /*delta_minutes*/,
31375  1844 /*until_year*/,
31376  12 /*until_month*/,
31377  31 /*until_day*/,
31378  0 /*until_time_code (0/15)*/,
31379  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31380  },
31381  // 10:51:56 - LMT 1901
31382  {
31383  NULL /*zone_policy*/,
31384  "LMT" /*format*/,
31385  2607 /*offset_code (39116/15)*/,
31386  11 /*offset_remainder (39116%15)*/,
31387  0 /*delta_minutes*/,
31388  1901 /*until_year*/,
31389  1 /*until_month*/,
31390  1 /*until_day*/,
31391  0 /*until_time_code (0/15)*/,
31392  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31393  },
31394  // 11:00 - +11 1914 Oct
31395  {
31396  NULL /*zone_policy*/,
31397  "+11" /*format*/,
31398  2640 /*offset_code (39600/15)*/,
31399  0 /*offset_remainder (39600%15)*/,
31400  0 /*delta_minutes*/,
31401  1914 /*until_year*/,
31402  10 /*until_month*/,
31403  1 /*until_day*/,
31404  0 /*until_time_code (0/15)*/,
31405  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31406  },
31407  // 9:00 - +09 1919 Feb 1
31408  {
31409  NULL /*zone_policy*/,
31410  "+09" /*format*/,
31411  2160 /*offset_code (32400/15)*/,
31412  0 /*offset_remainder (32400%15)*/,
31413  0 /*delta_minutes*/,
31414  1919 /*until_year*/,
31415  2 /*until_month*/,
31416  1 /*until_day*/,
31417  0 /*until_time_code (0/15)*/,
31418  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31419  },
31420  // 11:00 - +11 1937
31421  {
31422  NULL /*zone_policy*/,
31423  "+11" /*format*/,
31424  2640 /*offset_code (39600/15)*/,
31425  0 /*offset_remainder (39600%15)*/,
31426  0 /*delta_minutes*/,
31427  1937 /*until_year*/,
31428  1 /*until_month*/,
31429  1 /*until_day*/,
31430  0 /*until_time_code (0/15)*/,
31431  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31432  },
31433  // 10:00 - +10 1941 Apr 1
31434  {
31435  NULL /*zone_policy*/,
31436  "+10" /*format*/,
31437  2400 /*offset_code (36000/15)*/,
31438  0 /*offset_remainder (36000%15)*/,
31439  0 /*delta_minutes*/,
31440  1941 /*until_year*/,
31441  4 /*until_month*/,
31442  1 /*until_day*/,
31443  0 /*until_time_code (0/15)*/,
31444  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31445  },
31446  // 9:00 - +09 1945 Aug
31447  {
31448  NULL /*zone_policy*/,
31449  "+09" /*format*/,
31450  2160 /*offset_code (32400/15)*/,
31451  0 /*offset_remainder (32400%15)*/,
31452  0 /*delta_minutes*/,
31453  1945 /*until_year*/,
31454  8 /*until_month*/,
31455  1 /*until_day*/,
31456  0 /*until_time_code (0/15)*/,
31457  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31458  },
31459  // 11:00 - +11 1969 Oct
31460  {
31461  NULL /*zone_policy*/,
31462  "+11" /*format*/,
31463  2640 /*offset_code (39600/15)*/,
31464  0 /*offset_remainder (39600%15)*/,
31465  0 /*delta_minutes*/,
31466  1969 /*until_year*/,
31467  10 /*until_month*/,
31468  1 /*until_day*/,
31469  0 /*until_time_code (0/15)*/,
31470  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31471  },
31472  // 12:00 - +12 1999
31473  {
31474  NULL /*zone_policy*/,
31475  "+12" /*format*/,
31476  2880 /*offset_code (43200/15)*/,
31477  0 /*offset_remainder (43200%15)*/,
31478  0 /*delta_minutes*/,
31479  1999 /*until_year*/,
31480  1 /*until_month*/,
31481  1 /*until_day*/,
31482  0 /*until_time_code (0/15)*/,
31483  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31484  },
31485  // 11:00 - +11
31486  {
31487  NULL /*zone_policy*/,
31488  "+11" /*format*/,
31489  2640 /*offset_code (39600/15)*/,
31490  0 /*offset_remainder (39600%15)*/,
31491  0 /*delta_minutes*/,
31492  32767 /*until_year*/,
31493  1 /*until_month*/,
31494  1 /*until_day*/,
31495  0 /*until_time_code (0/15)*/,
31496  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31497  },
31498 
31499 };
31500 
31501 static const char kAtcZoneNamePacific_Kosrae[] = "Pacific/Kosrae";
31502 
31503 const AtcZoneInfo kAtcAllZonePacific_Kosrae = {
31504  kAtcZoneNamePacific_Kosrae /*name*/,
31505  0xde5139a8 /*zone_id*/,
31506  &kAtcAllZoneContext /*zone_context*/,
31507  10 /*num_eras*/,
31508  kAtcZoneEraPacific_Kosrae /*eras*/,
31509  NULL /*target_info*/,
31510 };
31511 
31512 //---------------------------------------------------------------------------
31513 // Zone name: Pacific/Kwajalein
31514 // Zone Eras: 7
31515 //---------------------------------------------------------------------------
31516 
31517 static const AtcZoneEra kAtcZoneEraPacific_Kwajalein[] = {
31518  // 11:09:20 - LMT 1901
31519  {
31520  NULL /*zone_policy*/,
31521  "LMT" /*format*/,
31522  2677 /*offset_code (40160/15)*/,
31523  5 /*offset_remainder (40160%15)*/,
31524  0 /*delta_minutes*/,
31525  1901 /*until_year*/,
31526  1 /*until_month*/,
31527  1 /*until_day*/,
31528  0 /*until_time_code (0/15)*/,
31529  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31530  },
31531  // 11:00 - +11 1937
31532  {
31533  NULL /*zone_policy*/,
31534  "+11" /*format*/,
31535  2640 /*offset_code (39600/15)*/,
31536  0 /*offset_remainder (39600%15)*/,
31537  0 /*delta_minutes*/,
31538  1937 /*until_year*/,
31539  1 /*until_month*/,
31540  1 /*until_day*/,
31541  0 /*until_time_code (0/15)*/,
31542  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31543  },
31544  // 10:00 - +10 1941 Apr 1
31545  {
31546  NULL /*zone_policy*/,
31547  "+10" /*format*/,
31548  2400 /*offset_code (36000/15)*/,
31549  0 /*offset_remainder (36000%15)*/,
31550  0 /*delta_minutes*/,
31551  1941 /*until_year*/,
31552  4 /*until_month*/,
31553  1 /*until_day*/,
31554  0 /*until_time_code (0/15)*/,
31555  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31556  },
31557  // 9:00 - +09 1944 Feb 6
31558  {
31559  NULL /*zone_policy*/,
31560  "+09" /*format*/,
31561  2160 /*offset_code (32400/15)*/,
31562  0 /*offset_remainder (32400%15)*/,
31563  0 /*delta_minutes*/,
31564  1944 /*until_year*/,
31565  2 /*until_month*/,
31566  6 /*until_day*/,
31567  0 /*until_time_code (0/15)*/,
31568  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31569  },
31570  // 11:00 - +11 1969 Oct
31571  {
31572  NULL /*zone_policy*/,
31573  "+11" /*format*/,
31574  2640 /*offset_code (39600/15)*/,
31575  0 /*offset_remainder (39600%15)*/,
31576  0 /*delta_minutes*/,
31577  1969 /*until_year*/,
31578  10 /*until_month*/,
31579  1 /*until_day*/,
31580  0 /*until_time_code (0/15)*/,
31581  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31582  },
31583  // -12:00 - -12 1993 Aug 20 24:00
31584  {
31585  NULL /*zone_policy*/,
31586  "-12" /*format*/,
31587  -2880 /*offset_code (-43200/15)*/,
31588  0 /*offset_remainder (-43200%15)*/,
31589  0 /*delta_minutes*/,
31590  1993 /*until_year*/,
31591  8 /*until_month*/,
31592  20 /*until_day*/,
31593  5760 /*until_time_code (86400/15)*/,
31594  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31595  },
31596  // 12:00 - +12
31597  {
31598  NULL /*zone_policy*/,
31599  "+12" /*format*/,
31600  2880 /*offset_code (43200/15)*/,
31601  0 /*offset_remainder (43200%15)*/,
31602  0 /*delta_minutes*/,
31603  32767 /*until_year*/,
31604  1 /*until_month*/,
31605  1 /*until_day*/,
31606  0 /*until_time_code (0/15)*/,
31607  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31608  },
31609 
31610 };
31611 
31612 static const char kAtcZoneNamePacific_Kwajalein[] = "Pacific/Kwajalein";
31613 
31614 const AtcZoneInfo kAtcAllZonePacific_Kwajalein = {
31615  kAtcZoneNamePacific_Kwajalein /*name*/,
31616  0x8e216759 /*zone_id*/,
31617  &kAtcAllZoneContext /*zone_context*/,
31618  7 /*num_eras*/,
31619  kAtcZoneEraPacific_Kwajalein /*eras*/,
31620  NULL /*target_info*/,
31621 };
31622 
31623 //---------------------------------------------------------------------------
31624 // Zone name: Pacific/Marquesas
31625 // Zone Eras: 2
31626 //---------------------------------------------------------------------------
31627 
31628 static const AtcZoneEra kAtcZoneEraPacific_Marquesas[] = {
31629  // -9:18:00 - LMT 1912 Oct
31630  {
31631  NULL /*zone_policy*/,
31632  "LMT" /*format*/,
31633  -2232 /*offset_code (-33480/15)*/,
31634  0 /*offset_remainder (-33480%15)*/,
31635  0 /*delta_minutes*/,
31636  1912 /*until_year*/,
31637  10 /*until_month*/,
31638  1 /*until_day*/,
31639  0 /*until_time_code (0/15)*/,
31640  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31641  },
31642  // -9:30 - -0930
31643  {
31644  NULL /*zone_policy*/,
31645  "-0930" /*format*/,
31646  -2280 /*offset_code (-34200/15)*/,
31647  0 /*offset_remainder (-34200%15)*/,
31648  0 /*delta_minutes*/,
31649  32767 /*until_year*/,
31650  1 /*until_month*/,
31651  1 /*until_day*/,
31652  0 /*until_time_code (0/15)*/,
31653  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31654  },
31655 
31656 };
31657 
31658 static const char kAtcZoneNamePacific_Marquesas[] = "Pacific/Marquesas";
31659 
31660 const AtcZoneInfo kAtcAllZonePacific_Marquesas = {
31661  kAtcZoneNamePacific_Marquesas /*name*/,
31662  0x57ca7135 /*zone_id*/,
31663  &kAtcAllZoneContext /*zone_context*/,
31664  2 /*num_eras*/,
31665  kAtcZoneEraPacific_Marquesas /*eras*/,
31666  NULL /*target_info*/,
31667 };
31668 
31669 //---------------------------------------------------------------------------
31670 // Zone name: Pacific/Nauru
31671 // Zone Eras: 5
31672 //---------------------------------------------------------------------------
31673 
31674 static const AtcZoneEra kAtcZoneEraPacific_Nauru[] = {
31675  // 11:07:40 - LMT 1921 Jan 15
31676  {
31677  NULL /*zone_policy*/,
31678  "LMT" /*format*/,
31679  2670 /*offset_code (40060/15)*/,
31680  10 /*offset_remainder (40060%15)*/,
31681  0 /*delta_minutes*/,
31682  1921 /*until_year*/,
31683  1 /*until_month*/,
31684  15 /*until_day*/,
31685  0 /*until_time_code (0/15)*/,
31686  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31687  },
31688  // 11:30 - +1130 1942 Aug 29
31689  {
31690  NULL /*zone_policy*/,
31691  "+1130" /*format*/,
31692  2760 /*offset_code (41400/15)*/,
31693  0 /*offset_remainder (41400%15)*/,
31694  0 /*delta_minutes*/,
31695  1942 /*until_year*/,
31696  8 /*until_month*/,
31697  29 /*until_day*/,
31698  0 /*until_time_code (0/15)*/,
31699  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31700  },
31701  // 9:00 - +09 1945 Sep 8
31702  {
31703  NULL /*zone_policy*/,
31704  "+09" /*format*/,
31705  2160 /*offset_code (32400/15)*/,
31706  0 /*offset_remainder (32400%15)*/,
31707  0 /*delta_minutes*/,
31708  1945 /*until_year*/,
31709  9 /*until_month*/,
31710  8 /*until_day*/,
31711  0 /*until_time_code (0/15)*/,
31712  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31713  },
31714  // 11:30 - +1130 1979 Feb 10 2:00
31715  {
31716  NULL /*zone_policy*/,
31717  "+1130" /*format*/,
31718  2760 /*offset_code (41400/15)*/,
31719  0 /*offset_remainder (41400%15)*/,
31720  0 /*delta_minutes*/,
31721  1979 /*until_year*/,
31722  2 /*until_month*/,
31723  10 /*until_day*/,
31724  480 /*until_time_code (7200/15)*/,
31725  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31726  },
31727  // 12:00 - +12
31728  {
31729  NULL /*zone_policy*/,
31730  "+12" /*format*/,
31731  2880 /*offset_code (43200/15)*/,
31732  0 /*offset_remainder (43200%15)*/,
31733  0 /*delta_minutes*/,
31734  32767 /*until_year*/,
31735  1 /*until_month*/,
31736  1 /*until_day*/,
31737  0 /*until_time_code (0/15)*/,
31738  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31739  },
31740 
31741 };
31742 
31743 static const char kAtcZoneNamePacific_Nauru[] = "Pacific/Nauru";
31744 
31745 const AtcZoneInfo kAtcAllZonePacific_Nauru = {
31746  kAtcZoneNamePacific_Nauru /*name*/,
31747  0x8acc41ae /*zone_id*/,
31748  &kAtcAllZoneContext /*zone_context*/,
31749  5 /*num_eras*/,
31750  kAtcZoneEraPacific_Nauru /*eras*/,
31751  NULL /*target_info*/,
31752 };
31753 
31754 //---------------------------------------------------------------------------
31755 // Zone name: Pacific/Niue
31756 // Zone Eras: 3
31757 //---------------------------------------------------------------------------
31758 
31759 static const AtcZoneEra kAtcZoneEraPacific_Niue[] = {
31760  // -11:19:40 - LMT 1952 Oct 16
31761  {
31762  NULL /*zone_policy*/,
31763  "LMT" /*format*/,
31764  -2719 /*offset_code (-40780/15)*/,
31765  5 /*offset_remainder (-40780%15)*/,
31766  0 /*delta_minutes*/,
31767  1952 /*until_year*/,
31768  10 /*until_month*/,
31769  16 /*until_day*/,
31770  0 /*until_time_code (0/15)*/,
31771  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31772  },
31773  // -11:20 - -1120 1964 Jul
31774  {
31775  NULL /*zone_policy*/,
31776  "-1120" /*format*/,
31777  -2720 /*offset_code (-40800/15)*/,
31778  0 /*offset_remainder (-40800%15)*/,
31779  0 /*delta_minutes*/,
31780  1964 /*until_year*/,
31781  7 /*until_month*/,
31782  1 /*until_day*/,
31783  0 /*until_time_code (0/15)*/,
31784  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31785  },
31786  // -11:00 - -11
31787  {
31788  NULL /*zone_policy*/,
31789  "-11" /*format*/,
31790  -2640 /*offset_code (-39600/15)*/,
31791  0 /*offset_remainder (-39600%15)*/,
31792  0 /*delta_minutes*/,
31793  32767 /*until_year*/,
31794  1 /*until_month*/,
31795  1 /*until_day*/,
31796  0 /*until_time_code (0/15)*/,
31797  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31798  },
31799 
31800 };
31801 
31802 static const char kAtcZoneNamePacific_Niue[] = "Pacific/Niue";
31803 
31804 const AtcZoneInfo kAtcAllZonePacific_Niue = {
31805  kAtcZoneNamePacific_Niue /*name*/,
31806  0x233ca014 /*zone_id*/,
31807  &kAtcAllZoneContext /*zone_context*/,
31808  3 /*num_eras*/,
31809  kAtcZoneEraPacific_Niue /*eras*/,
31810  NULL /*target_info*/,
31811 };
31812 
31813 //---------------------------------------------------------------------------
31814 // Zone name: Pacific/Norfolk
31815 // Zone Eras: 7
31816 //---------------------------------------------------------------------------
31817 
31818 static const AtcZoneEra kAtcZoneEraPacific_Norfolk[] = {
31819  // 11:11:52 - LMT 1901
31820  {
31821  NULL /*zone_policy*/,
31822  "LMT" /*format*/,
31823  2687 /*offset_code (40312/15)*/,
31824  7 /*offset_remainder (40312%15)*/,
31825  0 /*delta_minutes*/,
31826  1901 /*until_year*/,
31827  1 /*until_month*/,
31828  1 /*until_day*/,
31829  0 /*until_time_code (0/15)*/,
31830  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31831  },
31832  // 11:12 - +1112 1951
31833  {
31834  NULL /*zone_policy*/,
31835  "+1112" /*format*/,
31836  2688 /*offset_code (40320/15)*/,
31837  0 /*offset_remainder (40320%15)*/,
31838  0 /*delta_minutes*/,
31839  1951 /*until_year*/,
31840  1 /*until_month*/,
31841  1 /*until_day*/,
31842  0 /*until_time_code (0/15)*/,
31843  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31844  },
31845  // 11:30 - +1130 1974 Oct 27 02:00s
31846  {
31847  NULL /*zone_policy*/,
31848  "+1130" /*format*/,
31849  2760 /*offset_code (41400/15)*/,
31850  0 /*offset_remainder (41400%15)*/,
31851  0 /*delta_minutes*/,
31852  1974 /*until_year*/,
31853  10 /*until_month*/,
31854  27 /*until_day*/,
31855  480 /*until_time_code (7200/15)*/,
31856  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
31857  },
31858  // 11:30 1:00 +1230 1975 Mar 2 02:00s
31859  {
31860  NULL /*zone_policy*/,
31861  "+1230" /*format*/,
31862  2760 /*offset_code (41400/15)*/,
31863  0 /*offset_remainder (41400%15)*/,
31864  60 /*delta_minutes*/,
31865  1975 /*until_year*/,
31866  3 /*until_month*/,
31867  2 /*until_day*/,
31868  480 /*until_time_code (7200/15)*/,
31869  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
31870  },
31871  // 11:30 - +1130 2015 Oct 4 02:00s
31872  {
31873  NULL /*zone_policy*/,
31874  "+1130" /*format*/,
31875  2760 /*offset_code (41400/15)*/,
31876  0 /*offset_remainder (41400%15)*/,
31877  0 /*delta_minutes*/,
31878  2015 /*until_year*/,
31879  10 /*until_month*/,
31880  4 /*until_day*/,
31881  480 /*until_time_code (7200/15)*/,
31882  16 /*until_time_modifier (kAtcSuffixS + seconds=0)*/,
31883  },
31884  // 11:00 - +11 2019 Jul
31885  {
31886  NULL /*zone_policy*/,
31887  "+11" /*format*/,
31888  2640 /*offset_code (39600/15)*/,
31889  0 /*offset_remainder (39600%15)*/,
31890  0 /*delta_minutes*/,
31891  2019 /*until_year*/,
31892  7 /*until_month*/,
31893  1 /*until_day*/,
31894  0 /*until_time_code (0/15)*/,
31895  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31896  },
31897  // 11:00 AN +11/+12
31898  {
31899  &kAtcAllZonePolicyAN /*zone_policy*/,
31900  "+11/+12" /*format*/,
31901  2640 /*offset_code (39600/15)*/,
31902  0 /*offset_remainder (39600%15)*/,
31903  0 /*delta_minutes*/,
31904  32767 /*until_year*/,
31905  1 /*until_month*/,
31906  1 /*until_day*/,
31907  0 /*until_time_code (0/15)*/,
31908  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31909  },
31910 
31911 };
31912 
31913 static const char kAtcZoneNamePacific_Norfolk[] = "Pacific/Norfolk";
31914 
31915 const AtcZoneInfo kAtcAllZonePacific_Norfolk = {
31916  kAtcZoneNamePacific_Norfolk /*name*/,
31917  0x8f4eb4be /*zone_id*/,
31918  &kAtcAllZoneContext /*zone_context*/,
31919  7 /*num_eras*/,
31920  kAtcZoneEraPacific_Norfolk /*eras*/,
31921  NULL /*target_info*/,
31922 };
31923 
31924 //---------------------------------------------------------------------------
31925 // Zone name: Pacific/Noumea
31926 // Zone Eras: 2
31927 //---------------------------------------------------------------------------
31928 
31929 static const AtcZoneEra kAtcZoneEraPacific_Noumea[] = {
31930  // 11:05:48 - LMT 1912 Jan 13
31931  {
31932  NULL /*zone_policy*/,
31933  "LMT" /*format*/,
31934  2663 /*offset_code (39948/15)*/,
31935  3 /*offset_remainder (39948%15)*/,
31936  0 /*delta_minutes*/,
31937  1912 /*until_year*/,
31938  1 /*until_month*/,
31939  13 /*until_day*/,
31940  0 /*until_time_code (0/15)*/,
31941  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31942  },
31943  // 11:00 NC +11/+12
31944  {
31945  &kAtcAllZonePolicyNC /*zone_policy*/,
31946  "+11/+12" /*format*/,
31947  2640 /*offset_code (39600/15)*/,
31948  0 /*offset_remainder (39600%15)*/,
31949  0 /*delta_minutes*/,
31950  32767 /*until_year*/,
31951  1 /*until_month*/,
31952  1 /*until_day*/,
31953  0 /*until_time_code (0/15)*/,
31954  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31955  },
31956 
31957 };
31958 
31959 static const char kAtcZoneNamePacific_Noumea[] = "Pacific/Noumea";
31960 
31961 const AtcZoneInfo kAtcAllZonePacific_Noumea = {
31962  kAtcZoneNamePacific_Noumea /*name*/,
31963  0xe551b788 /*zone_id*/,
31964  &kAtcAllZoneContext /*zone_context*/,
31965  2 /*num_eras*/,
31966  kAtcZoneEraPacific_Noumea /*eras*/,
31967  NULL /*target_info*/,
31968 };
31969 
31970 //---------------------------------------------------------------------------
31971 // Zone name: Pacific/Pago_Pago
31972 // Zone Eras: 3
31973 //---------------------------------------------------------------------------
31974 
31975 static const AtcZoneEra kAtcZoneEraPacific_Pago_Pago[] = {
31976  // 12:37:12 - LMT 1892 Jul 5
31977  {
31978  NULL /*zone_policy*/,
31979  "LMT" /*format*/,
31980  3028 /*offset_code (45432/15)*/,
31981  12 /*offset_remainder (45432%15)*/,
31982  0 /*delta_minutes*/,
31983  1892 /*until_year*/,
31984  7 /*until_month*/,
31985  5 /*until_day*/,
31986  0 /*until_time_code (0/15)*/,
31987  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
31988  },
31989  // -11:22:48 - LMT 1911
31990  {
31991  NULL /*zone_policy*/,
31992  "LMT" /*format*/,
31993  -2732 /*offset_code (-40968/15)*/,
31994  12 /*offset_remainder (-40968%15)*/,
31995  0 /*delta_minutes*/,
31996  1911 /*until_year*/,
31997  1 /*until_month*/,
31998  1 /*until_day*/,
31999  0 /*until_time_code (0/15)*/,
32000  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32001  },
32002  // -11:00 - SST
32003  {
32004  NULL /*zone_policy*/,
32005  "SST" /*format*/,
32006  -2640 /*offset_code (-39600/15)*/,
32007  0 /*offset_remainder (-39600%15)*/,
32008  0 /*delta_minutes*/,
32009  32767 /*until_year*/,
32010  1 /*until_month*/,
32011  1 /*until_day*/,
32012  0 /*until_time_code (0/15)*/,
32013  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32014  },
32015 
32016 };
32017 
32018 static const char kAtcZoneNamePacific_Pago_Pago[] = "Pacific/Pago_Pago";
32019 
32020 const AtcZoneInfo kAtcAllZonePacific_Pago_Pago = {
32021  kAtcZoneNamePacific_Pago_Pago /*name*/,
32022  0x603aebd0 /*zone_id*/,
32023  &kAtcAllZoneContext /*zone_context*/,
32024  3 /*num_eras*/,
32025  kAtcZoneEraPacific_Pago_Pago /*eras*/,
32026  NULL /*target_info*/,
32027 };
32028 
32029 //---------------------------------------------------------------------------
32030 // Zone name: Pacific/Palau
32031 // Zone Eras: 3
32032 //---------------------------------------------------------------------------
32033 
32034 static const AtcZoneEra kAtcZoneEraPacific_Palau[] = {
32035  // -15:02:04 - LMT 1844 Dec 31
32036  {
32037  NULL /*zone_policy*/,
32038  "LMT" /*format*/,
32039  -3609 /*offset_code (-54124/15)*/,
32040  11 /*offset_remainder (-54124%15)*/,
32041  0 /*delta_minutes*/,
32042  1844 /*until_year*/,
32043  12 /*until_month*/,
32044  31 /*until_day*/,
32045  0 /*until_time_code (0/15)*/,
32046  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32047  },
32048  // 8:57:56 - LMT 1901
32049  {
32050  NULL /*zone_policy*/,
32051  "LMT" /*format*/,
32052  2151 /*offset_code (32276/15)*/,
32053  11 /*offset_remainder (32276%15)*/,
32054  0 /*delta_minutes*/,
32055  1901 /*until_year*/,
32056  1 /*until_month*/,
32057  1 /*until_day*/,
32058  0 /*until_time_code (0/15)*/,
32059  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32060  },
32061  // 9:00 - +09
32062  {
32063  NULL /*zone_policy*/,
32064  "+09" /*format*/,
32065  2160 /*offset_code (32400/15)*/,
32066  0 /*offset_remainder (32400%15)*/,
32067  0 /*delta_minutes*/,
32068  32767 /*until_year*/,
32069  1 /*until_month*/,
32070  1 /*until_day*/,
32071  0 /*until_time_code (0/15)*/,
32072  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32073  },
32074 
32075 };
32076 
32077 static const char kAtcZoneNamePacific_Palau[] = "Pacific/Palau";
32078 
32079 const AtcZoneInfo kAtcAllZonePacific_Palau = {
32080  kAtcZoneNamePacific_Palau /*name*/,
32081  0x8af04a36 /*zone_id*/,
32082  &kAtcAllZoneContext /*zone_context*/,
32083  3 /*num_eras*/,
32084  kAtcZoneEraPacific_Palau /*eras*/,
32085  NULL /*target_info*/,
32086 };
32087 
32088 //---------------------------------------------------------------------------
32089 // Zone name: Pacific/Pitcairn
32090 // Zone Eras: 3
32091 //---------------------------------------------------------------------------
32092 
32093 static const AtcZoneEra kAtcZoneEraPacific_Pitcairn[] = {
32094  // -8:40:20 - LMT 1901
32095  {
32096  NULL /*zone_policy*/,
32097  "LMT" /*format*/,
32098  -2082 /*offset_code (-31220/15)*/,
32099  10 /*offset_remainder (-31220%15)*/,
32100  0 /*delta_minutes*/,
32101  1901 /*until_year*/,
32102  1 /*until_month*/,
32103  1 /*until_day*/,
32104  0 /*until_time_code (0/15)*/,
32105  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32106  },
32107  // -8:30 - -0830 1998 Apr 27 0:00
32108  {
32109  NULL /*zone_policy*/,
32110  "-0830" /*format*/,
32111  -2040 /*offset_code (-30600/15)*/,
32112  0 /*offset_remainder (-30600%15)*/,
32113  0 /*delta_minutes*/,
32114  1998 /*until_year*/,
32115  4 /*until_month*/,
32116  27 /*until_day*/,
32117  0 /*until_time_code (0/15)*/,
32118  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32119  },
32120  // -8:00 - -08
32121  {
32122  NULL /*zone_policy*/,
32123  "-08" /*format*/,
32124  -1920 /*offset_code (-28800/15)*/,
32125  0 /*offset_remainder (-28800%15)*/,
32126  0 /*delta_minutes*/,
32127  32767 /*until_year*/,
32128  1 /*until_month*/,
32129  1 /*until_day*/,
32130  0 /*until_time_code (0/15)*/,
32131  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32132  },
32133 
32134 };
32135 
32136 static const char kAtcZoneNamePacific_Pitcairn[] = "Pacific/Pitcairn";
32137 
32138 const AtcZoneInfo kAtcAllZonePacific_Pitcairn = {
32139  kAtcZoneNamePacific_Pitcairn /*name*/,
32140  0x8837d8bd /*zone_id*/,
32141  &kAtcAllZoneContext /*zone_context*/,
32142  3 /*num_eras*/,
32143  kAtcZoneEraPacific_Pitcairn /*eras*/,
32144  NULL /*target_info*/,
32145 };
32146 
32147 //---------------------------------------------------------------------------
32148 // Zone name: Pacific/Port_Moresby
32149 // Zone Eras: 3
32150 //---------------------------------------------------------------------------
32151 
32152 static const AtcZoneEra kAtcZoneEraPacific_Port_Moresby[] = {
32153  // 9:48:40 - LMT 1880
32154  {
32155  NULL /*zone_policy*/,
32156  "LMT" /*format*/,
32157  2354 /*offset_code (35320/15)*/,
32158  10 /*offset_remainder (35320%15)*/,
32159  0 /*delta_minutes*/,
32160  1880 /*until_year*/,
32161  1 /*until_month*/,
32162  1 /*until_day*/,
32163  0 /*until_time_code (0/15)*/,
32164  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32165  },
32166  // 9:48:32 - PMMT 1895
32167  {
32168  NULL /*zone_policy*/,
32169  "PMMT" /*format*/,
32170  2354 /*offset_code (35312/15)*/,
32171  2 /*offset_remainder (35312%15)*/,
32172  0 /*delta_minutes*/,
32173  1895 /*until_year*/,
32174  1 /*until_month*/,
32175  1 /*until_day*/,
32176  0 /*until_time_code (0/15)*/,
32177  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32178  },
32179  // 10:00 - +10
32180  {
32181  NULL /*zone_policy*/,
32182  "+10" /*format*/,
32183  2400 /*offset_code (36000/15)*/,
32184  0 /*offset_remainder (36000%15)*/,
32185  0 /*delta_minutes*/,
32186  32767 /*until_year*/,
32187  1 /*until_month*/,
32188  1 /*until_day*/,
32189  0 /*until_time_code (0/15)*/,
32190  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32191  },
32192 
32193 };
32194 
32195 static const char kAtcZoneNamePacific_Port_Moresby[] = "Pacific/Port_Moresby";
32196 
32197 const AtcZoneInfo kAtcAllZonePacific_Port_Moresby = {
32198  kAtcZoneNamePacific_Port_Moresby /*name*/,
32199  0xa7ba7f68 /*zone_id*/,
32200  &kAtcAllZoneContext /*zone_context*/,
32201  3 /*num_eras*/,
32202  kAtcZoneEraPacific_Port_Moresby /*eras*/,
32203  NULL /*target_info*/,
32204 };
32205 
32206 //---------------------------------------------------------------------------
32207 // Zone name: Pacific/Rarotonga
32208 // Zone Eras: 4
32209 //---------------------------------------------------------------------------
32210 
32211 static const AtcZoneEra kAtcZoneEraPacific_Rarotonga[] = {
32212  // 13:20:56 - LMT 1899 Dec 26
32213  {
32214  NULL /*zone_policy*/,
32215  "LMT" /*format*/,
32216  3203 /*offset_code (48056/15)*/,
32217  11 /*offset_remainder (48056%15)*/,
32218  0 /*delta_minutes*/,
32219  1899 /*until_year*/,
32220  12 /*until_month*/,
32221  26 /*until_day*/,
32222  0 /*until_time_code (0/15)*/,
32223  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32224  },
32225  // -10:39:04 - LMT 1952 Oct 16
32226  {
32227  NULL /*zone_policy*/,
32228  "LMT" /*format*/,
32229  -2557 /*offset_code (-38344/15)*/,
32230  11 /*offset_remainder (-38344%15)*/,
32231  0 /*delta_minutes*/,
32232  1952 /*until_year*/,
32233  10 /*until_month*/,
32234  16 /*until_day*/,
32235  0 /*until_time_code (0/15)*/,
32236  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32237  },
32238  // -10:30 - -1030 1978 Nov 12
32239  {
32240  NULL /*zone_policy*/,
32241  "-1030" /*format*/,
32242  -2520 /*offset_code (-37800/15)*/,
32243  0 /*offset_remainder (-37800%15)*/,
32244  0 /*delta_minutes*/,
32245  1978 /*until_year*/,
32246  11 /*until_month*/,
32247  12 /*until_day*/,
32248  0 /*until_time_code (0/15)*/,
32249  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32250  },
32251  // -10:00 Cook -10/-0930
32252  {
32253  &kAtcAllZonePolicyCook /*zone_policy*/,
32254  "-10/-0930" /*format*/,
32255  -2400 /*offset_code (-36000/15)*/,
32256  0 /*offset_remainder (-36000%15)*/,
32257  0 /*delta_minutes*/,
32258  32767 /*until_year*/,
32259  1 /*until_month*/,
32260  1 /*until_day*/,
32261  0 /*until_time_code (0/15)*/,
32262  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32263  },
32264 
32265 };
32266 
32267 static const char kAtcZoneNamePacific_Rarotonga[] = "Pacific/Rarotonga";
32268 
32269 const AtcZoneInfo kAtcAllZonePacific_Rarotonga = {
32270  kAtcZoneNamePacific_Rarotonga /*name*/,
32271  0x9981a3b0 /*zone_id*/,
32272  &kAtcAllZoneContext /*zone_context*/,
32273  4 /*num_eras*/,
32274  kAtcZoneEraPacific_Rarotonga /*eras*/,
32275  NULL /*target_info*/,
32276 };
32277 
32278 //---------------------------------------------------------------------------
32279 // Zone name: Pacific/Tahiti
32280 // Zone Eras: 2
32281 //---------------------------------------------------------------------------
32282 
32283 static const AtcZoneEra kAtcZoneEraPacific_Tahiti[] = {
32284  // -9:58:16 - LMT 1912 Oct
32285  {
32286  NULL /*zone_policy*/,
32287  "LMT" /*format*/,
32288  -2394 /*offset_code (-35896/15)*/,
32289  14 /*offset_remainder (-35896%15)*/,
32290  0 /*delta_minutes*/,
32291  1912 /*until_year*/,
32292  10 /*until_month*/,
32293  1 /*until_day*/,
32294  0 /*until_time_code (0/15)*/,
32295  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32296  },
32297  // -10:00 - -10
32298  {
32299  NULL /*zone_policy*/,
32300  "-10" /*format*/,
32301  -2400 /*offset_code (-36000/15)*/,
32302  0 /*offset_remainder (-36000%15)*/,
32303  0 /*delta_minutes*/,
32304  32767 /*until_year*/,
32305  1 /*until_month*/,
32306  1 /*until_day*/,
32307  0 /*until_time_code (0/15)*/,
32308  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32309  },
32310 
32311 };
32312 
32313 static const char kAtcZoneNamePacific_Tahiti[] = "Pacific/Tahiti";
32314 
32315 const AtcZoneInfo kAtcAllZonePacific_Tahiti = {
32316  kAtcZoneNamePacific_Tahiti /*name*/,
32317  0xf24c2446 /*zone_id*/,
32318  &kAtcAllZoneContext /*zone_context*/,
32319  2 /*num_eras*/,
32320  kAtcZoneEraPacific_Tahiti /*eras*/,
32321  NULL /*target_info*/,
32322 };
32323 
32324 //---------------------------------------------------------------------------
32325 // Zone name: Pacific/Tarawa
32326 // Zone Eras: 2
32327 //---------------------------------------------------------------------------
32328 
32329 static const AtcZoneEra kAtcZoneEraPacific_Tarawa[] = {
32330  // 11:32:04 - LMT 1901
32331  {
32332  NULL /*zone_policy*/,
32333  "LMT" /*format*/,
32334  2768 /*offset_code (41524/15)*/,
32335  4 /*offset_remainder (41524%15)*/,
32336  0 /*delta_minutes*/,
32337  1901 /*until_year*/,
32338  1 /*until_month*/,
32339  1 /*until_day*/,
32340  0 /*until_time_code (0/15)*/,
32341  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32342  },
32343  // 12:00 - +12
32344  {
32345  NULL /*zone_policy*/,
32346  "+12" /*format*/,
32347  2880 /*offset_code (43200/15)*/,
32348  0 /*offset_remainder (43200%15)*/,
32349  0 /*delta_minutes*/,
32350  32767 /*until_year*/,
32351  1 /*until_month*/,
32352  1 /*until_day*/,
32353  0 /*until_time_code (0/15)*/,
32354  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32355  },
32356 
32357 };
32358 
32359 static const char kAtcZoneNamePacific_Tarawa[] = "Pacific/Tarawa";
32360 
32361 const AtcZoneInfo kAtcAllZonePacific_Tarawa = {
32362  kAtcZoneNamePacific_Tarawa /*name*/,
32363  0xf2517e63 /*zone_id*/,
32364  &kAtcAllZoneContext /*zone_context*/,
32365  2 /*num_eras*/,
32366  kAtcZoneEraPacific_Tarawa /*eras*/,
32367  NULL /*target_info*/,
32368 };
32369 
32370 //---------------------------------------------------------------------------
32371 // Zone name: Pacific/Tongatapu
32372 // Zone Eras: 4
32373 //---------------------------------------------------------------------------
32374 
32375 static const AtcZoneEra kAtcZoneEraPacific_Tongatapu[] = {
32376  // 12:19:12 - LMT 1945 Sep 10
32377  {
32378  NULL /*zone_policy*/,
32379  "LMT" /*format*/,
32380  2956 /*offset_code (44352/15)*/,
32381  12 /*offset_remainder (44352%15)*/,
32382  0 /*delta_minutes*/,
32383  1945 /*until_year*/,
32384  9 /*until_month*/,
32385  10 /*until_day*/,
32386  0 /*until_time_code (0/15)*/,
32387  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32388  },
32389  // 12:20 - +1220 1961
32390  {
32391  NULL /*zone_policy*/,
32392  "+1220" /*format*/,
32393  2960 /*offset_code (44400/15)*/,
32394  0 /*offset_remainder (44400%15)*/,
32395  0 /*delta_minutes*/,
32396  1961 /*until_year*/,
32397  1 /*until_month*/,
32398  1 /*until_day*/,
32399  0 /*until_time_code (0/15)*/,
32400  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32401  },
32402  // 13:00 - +13 1999
32403  {
32404  NULL /*zone_policy*/,
32405  "+13" /*format*/,
32406  3120 /*offset_code (46800/15)*/,
32407  0 /*offset_remainder (46800%15)*/,
32408  0 /*delta_minutes*/,
32409  1999 /*until_year*/,
32410  1 /*until_month*/,
32411  1 /*until_day*/,
32412  0 /*until_time_code (0/15)*/,
32413  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32414  },
32415  // 13:00 Tonga +13/+14
32416  {
32417  &kAtcAllZonePolicyTonga /*zone_policy*/,
32418  "+13/+14" /*format*/,
32419  3120 /*offset_code (46800/15)*/,
32420  0 /*offset_remainder (46800%15)*/,
32421  0 /*delta_minutes*/,
32422  32767 /*until_year*/,
32423  1 /*until_month*/,
32424  1 /*until_day*/,
32425  0 /*until_time_code (0/15)*/,
32426  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32427  },
32428 
32429 };
32430 
32431 static const char kAtcZoneNamePacific_Tongatapu[] = "Pacific/Tongatapu";
32432 
32433 const AtcZoneInfo kAtcAllZonePacific_Tongatapu = {
32434  kAtcZoneNamePacific_Tongatapu /*name*/,
32435  0x262ca836 /*zone_id*/,
32436  &kAtcAllZoneContext /*zone_context*/,
32437  4 /*num_eras*/,
32438  kAtcZoneEraPacific_Tongatapu /*eras*/,
32439  NULL /*target_info*/,
32440 };
32441 
32442 //---------------------------------------------------------------------------
32443 // Zone name: WET
32444 // Zone Eras: 1
32445 //---------------------------------------------------------------------------
32446 
32447 static const AtcZoneEra kAtcZoneEraWET[] = {
32448  // 0:00 EU WE%sT
32449  {
32450  &kAtcAllZonePolicyEU /*zone_policy*/,
32451  "WE%T" /*format*/,
32452  0 /*offset_code (0/15)*/,
32453  0 /*offset_remainder (0%15)*/,
32454  0 /*delta_minutes*/,
32455  32767 /*until_year*/,
32456  1 /*until_month*/,
32457  1 /*until_day*/,
32458  0 /*until_time_code (0/15)*/,
32459  0 /*until_time_modifier (kAtcSuffixW + seconds=0)*/,
32460  },
32461 
32462 };
32463 
32464 static const char kAtcZoneNameWET[] = "WET";
32465 
32466 const AtcZoneInfo kAtcAllZoneWET = {
32467  kAtcZoneNameWET /*name*/,
32468  0x0b882e35 /*zone_id*/,
32469  &kAtcAllZoneContext /*zone_context*/,
32470  1 /*num_eras*/,
32471  kAtcZoneEraWET /*eras*/,
32472  NULL /*target_info*/,
32473 };
32474 
32475 
32476 
32477 //---------------------------------------------------------------------------
32478 // Links: 246
32479 //---------------------------------------------------------------------------
32480 
32481 //---------------------------------------------------------------------------
32482 // Link name: Africa/Accra -> Africa/Abidjan
32483 //---------------------------------------------------------------------------
32484 
32485 static const char kAtcZoneNameAfrica_Accra[] = "Africa/Accra";
32486 
32487 const AtcZoneInfo kAtcAllZoneAfrica_Accra = {
32488  kAtcZoneNameAfrica_Accra /*name*/,
32489  0x77d5b054 /*zone_id*/,
32490  &kAtcAllZoneContext /*zone_context*/,
32491  2 /*num_eras*/,
32492  kAtcZoneEraAfrica_Abidjan /*eras*/,
32493  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32494 };
32495 
32496 //---------------------------------------------------------------------------
32497 // Link name: Africa/Addis_Ababa -> Africa/Nairobi
32498 //---------------------------------------------------------------------------
32499 
32500 static const char kAtcZoneNameAfrica_Addis_Ababa[] = "Africa/Addis_Ababa";
32501 
32502 const AtcZoneInfo kAtcAllZoneAfrica_Addis_Ababa = {
32503  kAtcZoneNameAfrica_Addis_Ababa /*name*/,
32504  0x05ae1e65 /*zone_id*/,
32505  &kAtcAllZoneContext /*zone_context*/,
32506  6 /*num_eras*/,
32507  kAtcZoneEraAfrica_Nairobi /*eras*/,
32508  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32509 };
32510 
32511 //---------------------------------------------------------------------------
32512 // Link name: Africa/Asmara -> Africa/Nairobi
32513 //---------------------------------------------------------------------------
32514 
32515 static const char kAtcZoneNameAfrica_Asmara[] = "Africa/Asmara";
32516 
32517 const AtcZoneInfo kAtcAllZoneAfrica_Asmara = {
32518  kAtcZoneNameAfrica_Asmara /*name*/,
32519  0x73b278ef /*zone_id*/,
32520  &kAtcAllZoneContext /*zone_context*/,
32521  6 /*num_eras*/,
32522  kAtcZoneEraAfrica_Nairobi /*eras*/,
32523  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32524 };
32525 
32526 //---------------------------------------------------------------------------
32527 // Link name: Africa/Asmera -> Africa/Nairobi
32528 //---------------------------------------------------------------------------
32529 
32530 static const char kAtcZoneNameAfrica_Asmera[] = "Africa/Asmera";
32531 
32532 const AtcZoneInfo kAtcAllZoneAfrica_Asmera = {
32533  kAtcZoneNameAfrica_Asmera /*name*/,
32534  0x73b289f3 /*zone_id*/,
32535  &kAtcAllZoneContext /*zone_context*/,
32536  6 /*num_eras*/,
32537  kAtcZoneEraAfrica_Nairobi /*eras*/,
32538  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32539 };
32540 
32541 //---------------------------------------------------------------------------
32542 // Link name: Africa/Bamako -> Africa/Abidjan
32543 //---------------------------------------------------------------------------
32544 
32545 static const char kAtcZoneNameAfrica_Bamako[] = "Africa/Bamako";
32546 
32547 const AtcZoneInfo kAtcAllZoneAfrica_Bamako = {
32548  kAtcZoneNameAfrica_Bamako /*name*/,
32549  0x74c1e7a5 /*zone_id*/,
32550  &kAtcAllZoneContext /*zone_context*/,
32551  2 /*num_eras*/,
32552  kAtcZoneEraAfrica_Abidjan /*eras*/,
32553  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32554 };
32555 
32556 //---------------------------------------------------------------------------
32557 // Link name: Africa/Bangui -> Africa/Lagos
32558 //---------------------------------------------------------------------------
32559 
32560 static const char kAtcZoneNameAfrica_Bangui[] = "Africa/Bangui";
32561 
32562 const AtcZoneInfo kAtcAllZoneAfrica_Bangui = {
32563  kAtcZoneNameAfrica_Bangui /*name*/,
32564  0x74c28ed0 /*zone_id*/,
32565  &kAtcAllZoneContext /*zone_context*/,
32566  5 /*num_eras*/,
32567  kAtcZoneEraAfrica_Lagos /*eras*/,
32568  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32569 };
32570 
32571 //---------------------------------------------------------------------------
32572 // Link name: Africa/Banjul -> Africa/Abidjan
32573 //---------------------------------------------------------------------------
32574 
32575 static const char kAtcZoneNameAfrica_Banjul[] = "Africa/Banjul";
32576 
32577 const AtcZoneInfo kAtcAllZoneAfrica_Banjul = {
32578  kAtcZoneNameAfrica_Banjul /*name*/,
32579  0x74c29b96 /*zone_id*/,
32580  &kAtcAllZoneContext /*zone_context*/,
32581  2 /*num_eras*/,
32582  kAtcZoneEraAfrica_Abidjan /*eras*/,
32583  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32584 };
32585 
32586 //---------------------------------------------------------------------------
32587 // Link name: Africa/Blantyre -> Africa/Maputo
32588 //---------------------------------------------------------------------------
32589 
32590 static const char kAtcZoneNameAfrica_Blantyre[] = "Africa/Blantyre";
32591 
32592 const AtcZoneInfo kAtcAllZoneAfrica_Blantyre = {
32593  kAtcZoneNameAfrica_Blantyre /*name*/,
32594  0xe08d813b /*zone_id*/,
32595  &kAtcAllZoneContext /*zone_context*/,
32596  2 /*num_eras*/,
32597  kAtcZoneEraAfrica_Maputo /*eras*/,
32598  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32599 };
32600 
32601 //---------------------------------------------------------------------------
32602 // Link name: Africa/Brazzaville -> Africa/Lagos
32603 //---------------------------------------------------------------------------
32604 
32605 static const char kAtcZoneNameAfrica_Brazzaville[] = "Africa/Brazzaville";
32606 
32607 const AtcZoneInfo kAtcAllZoneAfrica_Brazzaville = {
32608  kAtcZoneNameAfrica_Brazzaville /*name*/,
32609  0x39cda760 /*zone_id*/,
32610  &kAtcAllZoneContext /*zone_context*/,
32611  5 /*num_eras*/,
32612  kAtcZoneEraAfrica_Lagos /*eras*/,
32613  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32614 };
32615 
32616 //---------------------------------------------------------------------------
32617 // Link name: Africa/Bujumbura -> Africa/Maputo
32618 //---------------------------------------------------------------------------
32619 
32620 static const char kAtcZoneNameAfrica_Bujumbura[] = "Africa/Bujumbura";
32621 
32622 const AtcZoneInfo kAtcAllZoneAfrica_Bujumbura = {
32623  kAtcZoneNameAfrica_Bujumbura /*name*/,
32624  0x05232a47 /*zone_id*/,
32625  &kAtcAllZoneContext /*zone_context*/,
32626  2 /*num_eras*/,
32627  kAtcZoneEraAfrica_Maputo /*eras*/,
32628  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32629 };
32630 
32631 //---------------------------------------------------------------------------
32632 // Link name: Africa/Conakry -> Africa/Abidjan
32633 //---------------------------------------------------------------------------
32634 
32635 static const char kAtcZoneNameAfrica_Conakry[] = "Africa/Conakry";
32636 
32637 const AtcZoneInfo kAtcAllZoneAfrica_Conakry = {
32638  kAtcZoneNameAfrica_Conakry /*name*/,
32639  0x7ab36b31 /*zone_id*/,
32640  &kAtcAllZoneContext /*zone_context*/,
32641  2 /*num_eras*/,
32642  kAtcZoneEraAfrica_Abidjan /*eras*/,
32643  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32644 };
32645 
32646 //---------------------------------------------------------------------------
32647 // Link name: Africa/Dakar -> Africa/Abidjan
32648 //---------------------------------------------------------------------------
32649 
32650 static const char kAtcZoneNameAfrica_Dakar[] = "Africa/Dakar";
32651 
32652 const AtcZoneInfo kAtcAllZoneAfrica_Dakar = {
32653  kAtcZoneNameAfrica_Dakar /*name*/,
32654  0x780b00fd /*zone_id*/,
32655  &kAtcAllZoneContext /*zone_context*/,
32656  2 /*num_eras*/,
32657  kAtcZoneEraAfrica_Abidjan /*eras*/,
32658  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32659 };
32660 
32661 //---------------------------------------------------------------------------
32662 // Link name: Africa/Dar_es_Salaam -> Africa/Nairobi
32663 //---------------------------------------------------------------------------
32664 
32665 static const char kAtcZoneNameAfrica_Dar_es_Salaam[] = "Africa/Dar_es_Salaam";
32666 
32667 const AtcZoneInfo kAtcAllZoneAfrica_Dar_es_Salaam = {
32668  kAtcZoneNameAfrica_Dar_es_Salaam /*name*/,
32669  0xa04c47b6 /*zone_id*/,
32670  &kAtcAllZoneContext /*zone_context*/,
32671  6 /*num_eras*/,
32672  kAtcZoneEraAfrica_Nairobi /*eras*/,
32673  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32674 };
32675 
32676 //---------------------------------------------------------------------------
32677 // Link name: Africa/Djibouti -> Africa/Nairobi
32678 //---------------------------------------------------------------------------
32679 
32680 static const char kAtcZoneNameAfrica_Djibouti[] = "Africa/Djibouti";
32681 
32682 const AtcZoneInfo kAtcAllZoneAfrica_Djibouti = {
32683  kAtcZoneNameAfrica_Djibouti /*name*/,
32684  0x30ea01d4 /*zone_id*/,
32685  &kAtcAllZoneContext /*zone_context*/,
32686  6 /*num_eras*/,
32687  kAtcZoneEraAfrica_Nairobi /*eras*/,
32688  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32689 };
32690 
32691 //---------------------------------------------------------------------------
32692 // Link name: Africa/Douala -> Africa/Lagos
32693 //---------------------------------------------------------------------------
32694 
32695 static const char kAtcZoneNameAfrica_Douala[] = "Africa/Douala";
32696 
32697 const AtcZoneInfo kAtcAllZoneAfrica_Douala = {
32698  kAtcZoneNameAfrica_Douala /*name*/,
32699  0x7a6df310 /*zone_id*/,
32700  &kAtcAllZoneContext /*zone_context*/,
32701  5 /*num_eras*/,
32702  kAtcZoneEraAfrica_Lagos /*eras*/,
32703  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32704 };
32705 
32706 //---------------------------------------------------------------------------
32707 // Link name: Africa/Freetown -> Africa/Abidjan
32708 //---------------------------------------------------------------------------
32709 
32710 static const char kAtcZoneNameAfrica_Freetown[] = "Africa/Freetown";
32711 
32712 const AtcZoneInfo kAtcAllZoneAfrica_Freetown = {
32713  kAtcZoneNameAfrica_Freetown /*name*/,
32714  0x6823dd64 /*zone_id*/,
32715  &kAtcAllZoneContext /*zone_context*/,
32716  2 /*num_eras*/,
32717  kAtcZoneEraAfrica_Abidjan /*eras*/,
32718  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32719 };
32720 
32721 //---------------------------------------------------------------------------
32722 // Link name: Africa/Gaborone -> Africa/Maputo
32723 //---------------------------------------------------------------------------
32724 
32725 static const char kAtcZoneNameAfrica_Gaborone[] = "Africa/Gaborone";
32726 
32727 const AtcZoneInfo kAtcAllZoneAfrica_Gaborone = {
32728  kAtcZoneNameAfrica_Gaborone /*name*/,
32729  0x317c0aa7 /*zone_id*/,
32730  &kAtcAllZoneContext /*zone_context*/,
32731  2 /*num_eras*/,
32732  kAtcZoneEraAfrica_Maputo /*eras*/,
32733  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32734 };
32735 
32736 //---------------------------------------------------------------------------
32737 // Link name: Africa/Harare -> Africa/Maputo
32738 //---------------------------------------------------------------------------
32739 
32740 static const char kAtcZoneNameAfrica_Harare[] = "Africa/Harare";
32741 
32742 const AtcZoneInfo kAtcAllZoneAfrica_Harare = {
32743  kAtcZoneNameAfrica_Harare /*name*/,
32744  0x82c39a2d /*zone_id*/,
32745  &kAtcAllZoneContext /*zone_context*/,
32746  2 /*num_eras*/,
32747  kAtcZoneEraAfrica_Maputo /*eras*/,
32748  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32749 };
32750 
32751 //---------------------------------------------------------------------------
32752 // Link name: Africa/Kampala -> Africa/Nairobi
32753 //---------------------------------------------------------------------------
32754 
32755 static const char kAtcZoneNameAfrica_Kampala[] = "Africa/Kampala";
32756 
32757 const AtcZoneInfo kAtcAllZoneAfrica_Kampala = {
32758  kAtcZoneNameAfrica_Kampala /*name*/,
32759  0xc1d30e31 /*zone_id*/,
32760  &kAtcAllZoneContext /*zone_context*/,
32761  6 /*num_eras*/,
32762  kAtcZoneEraAfrica_Nairobi /*eras*/,
32763  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32764 };
32765 
32766 //---------------------------------------------------------------------------
32767 // Link name: Africa/Kigali -> Africa/Maputo
32768 //---------------------------------------------------------------------------
32769 
32770 static const char kAtcZoneNameAfrica_Kigali[] = "Africa/Kigali";
32771 
32772 const AtcZoneInfo kAtcAllZoneAfrica_Kigali = {
32773  kAtcZoneNameAfrica_Kigali /*name*/,
32774  0x8a4dcf2b /*zone_id*/,
32775  &kAtcAllZoneContext /*zone_context*/,
32776  2 /*num_eras*/,
32777  kAtcZoneEraAfrica_Maputo /*eras*/,
32778  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32779 };
32780 
32781 //---------------------------------------------------------------------------
32782 // Link name: Africa/Kinshasa -> Africa/Lagos
32783 //---------------------------------------------------------------------------
32784 
32785 static const char kAtcZoneNameAfrica_Kinshasa[] = "Africa/Kinshasa";
32786 
32787 const AtcZoneInfo kAtcAllZoneAfrica_Kinshasa = {
32788  kAtcZoneNameAfrica_Kinshasa /*name*/,
32789  0x6695d70c /*zone_id*/,
32790  &kAtcAllZoneContext /*zone_context*/,
32791  5 /*num_eras*/,
32792  kAtcZoneEraAfrica_Lagos /*eras*/,
32793  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32794 };
32795 
32796 //---------------------------------------------------------------------------
32797 // Link name: Africa/Libreville -> Africa/Lagos
32798 //---------------------------------------------------------------------------
32799 
32800 static const char kAtcZoneNameAfrica_Libreville[] = "Africa/Libreville";
32801 
32802 const AtcZoneInfo kAtcAllZoneAfrica_Libreville = {
32803  kAtcZoneNameAfrica_Libreville /*name*/,
32804  0x01d96de4 /*zone_id*/,
32805  &kAtcAllZoneContext /*zone_context*/,
32806  5 /*num_eras*/,
32807  kAtcZoneEraAfrica_Lagos /*eras*/,
32808  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32809 };
32810 
32811 //---------------------------------------------------------------------------
32812 // Link name: Africa/Lome -> Africa/Abidjan
32813 //---------------------------------------------------------------------------
32814 
32815 static const char kAtcZoneNameAfrica_Lome[] = "Africa/Lome";
32816 
32817 const AtcZoneInfo kAtcAllZoneAfrica_Lome = {
32818  kAtcZoneNameAfrica_Lome /*name*/,
32819  0xd51c3a07 /*zone_id*/,
32820  &kAtcAllZoneContext /*zone_context*/,
32821  2 /*num_eras*/,
32822  kAtcZoneEraAfrica_Abidjan /*eras*/,
32823  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32824 };
32825 
32826 //---------------------------------------------------------------------------
32827 // Link name: Africa/Luanda -> Africa/Lagos
32828 //---------------------------------------------------------------------------
32829 
32830 static const char kAtcZoneNameAfrica_Luanda[] = "Africa/Luanda";
32831 
32832 const AtcZoneInfo kAtcAllZoneAfrica_Luanda = {
32833  kAtcZoneNameAfrica_Luanda /*name*/,
32834  0x8d7909cf /*zone_id*/,
32835  &kAtcAllZoneContext /*zone_context*/,
32836  5 /*num_eras*/,
32837  kAtcZoneEraAfrica_Lagos /*eras*/,
32838  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32839 };
32840 
32841 //---------------------------------------------------------------------------
32842 // Link name: Africa/Lubumbashi -> Africa/Maputo
32843 //---------------------------------------------------------------------------
32844 
32845 static const char kAtcZoneNameAfrica_Lubumbashi[] = "Africa/Lubumbashi";
32846 
32847 const AtcZoneInfo kAtcAllZoneAfrica_Lubumbashi = {
32848  kAtcZoneNameAfrica_Lubumbashi /*name*/,
32849  0x6fd88566 /*zone_id*/,
32850  &kAtcAllZoneContext /*zone_context*/,
32851  2 /*num_eras*/,
32852  kAtcZoneEraAfrica_Maputo /*eras*/,
32853  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32854 };
32855 
32856 //---------------------------------------------------------------------------
32857 // Link name: Africa/Lusaka -> Africa/Maputo
32858 //---------------------------------------------------------------------------
32859 
32860 static const char kAtcZoneNameAfrica_Lusaka[] = "Africa/Lusaka";
32861 
32862 const AtcZoneInfo kAtcAllZoneAfrica_Lusaka = {
32863  kAtcZoneNameAfrica_Lusaka /*name*/,
32864  0x8d82b23b /*zone_id*/,
32865  &kAtcAllZoneContext /*zone_context*/,
32866  2 /*num_eras*/,
32867  kAtcZoneEraAfrica_Maputo /*eras*/,
32868  &kAtcAllZoneAfrica_Maputo /*target_info*/,
32869 };
32870 
32871 //---------------------------------------------------------------------------
32872 // Link name: Africa/Malabo -> Africa/Lagos
32873 //---------------------------------------------------------------------------
32874 
32875 static const char kAtcZoneNameAfrica_Malabo[] = "Africa/Malabo";
32876 
32877 const AtcZoneInfo kAtcAllZoneAfrica_Malabo = {
32878  kAtcZoneNameAfrica_Malabo /*name*/,
32879  0x8e6a1906 /*zone_id*/,
32880  &kAtcAllZoneContext /*zone_context*/,
32881  5 /*num_eras*/,
32882  kAtcZoneEraAfrica_Lagos /*eras*/,
32883  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32884 };
32885 
32886 //---------------------------------------------------------------------------
32887 // Link name: Africa/Maseru -> Africa/Johannesburg
32888 //---------------------------------------------------------------------------
32889 
32890 static const char kAtcZoneNameAfrica_Maseru[] = "Africa/Maseru";
32891 
32892 const AtcZoneInfo kAtcAllZoneAfrica_Maseru = {
32893  kAtcZoneNameAfrica_Maseru /*name*/,
32894  0x8e6e02c7 /*zone_id*/,
32895  &kAtcAllZoneContext /*zone_context*/,
32896  3 /*num_eras*/,
32897  kAtcZoneEraAfrica_Johannesburg /*eras*/,
32898  &kAtcAllZoneAfrica_Johannesburg /*target_info*/,
32899 };
32900 
32901 //---------------------------------------------------------------------------
32902 // Link name: Africa/Mbabane -> Africa/Johannesburg
32903 //---------------------------------------------------------------------------
32904 
32905 static const char kAtcZoneNameAfrica_Mbabane[] = "Africa/Mbabane";
32906 
32907 const AtcZoneInfo kAtcAllZoneAfrica_Mbabane = {
32908  kAtcZoneNameAfrica_Mbabane /*name*/,
32909  0x5d3bdd40 /*zone_id*/,
32910  &kAtcAllZoneContext /*zone_context*/,
32911  3 /*num_eras*/,
32912  kAtcZoneEraAfrica_Johannesburg /*eras*/,
32913  &kAtcAllZoneAfrica_Johannesburg /*target_info*/,
32914 };
32915 
32916 //---------------------------------------------------------------------------
32917 // Link name: Africa/Mogadishu -> Africa/Nairobi
32918 //---------------------------------------------------------------------------
32919 
32920 static const char kAtcZoneNameAfrica_Mogadishu[] = "Africa/Mogadishu";
32921 
32922 const AtcZoneInfo kAtcAllZoneAfrica_Mogadishu = {
32923  kAtcZoneNameAfrica_Mogadishu /*name*/,
32924  0x66bc159b /*zone_id*/,
32925  &kAtcAllZoneContext /*zone_context*/,
32926  6 /*num_eras*/,
32927  kAtcZoneEraAfrica_Nairobi /*eras*/,
32928  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
32929 };
32930 
32931 //---------------------------------------------------------------------------
32932 // Link name: Africa/Niamey -> Africa/Lagos
32933 //---------------------------------------------------------------------------
32934 
32935 static const char kAtcZoneNameAfrica_Niamey[] = "Africa/Niamey";
32936 
32937 const AtcZoneInfo kAtcAllZoneAfrica_Niamey = {
32938  kAtcZoneNameAfrica_Niamey /*name*/,
32939  0x914a30fd /*zone_id*/,
32940  &kAtcAllZoneContext /*zone_context*/,
32941  5 /*num_eras*/,
32942  kAtcZoneEraAfrica_Lagos /*eras*/,
32943  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32944 };
32945 
32946 //---------------------------------------------------------------------------
32947 // Link name: Africa/Nouakchott -> Africa/Abidjan
32948 //---------------------------------------------------------------------------
32949 
32950 static const char kAtcZoneNameAfrica_Nouakchott[] = "Africa/Nouakchott";
32951 
32952 const AtcZoneInfo kAtcAllZoneAfrica_Nouakchott = {
32953  kAtcZoneNameAfrica_Nouakchott /*name*/,
32954  0x3dc49dba /*zone_id*/,
32955  &kAtcAllZoneContext /*zone_context*/,
32956  2 /*num_eras*/,
32957  kAtcZoneEraAfrica_Abidjan /*eras*/,
32958  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32959 };
32960 
32961 //---------------------------------------------------------------------------
32962 // Link name: Africa/Ouagadougou -> Africa/Abidjan
32963 //---------------------------------------------------------------------------
32964 
32965 static const char kAtcZoneNameAfrica_Ouagadougou[] = "Africa/Ouagadougou";
32966 
32967 const AtcZoneInfo kAtcAllZoneAfrica_Ouagadougou = {
32968  kAtcZoneNameAfrica_Ouagadougou /*name*/,
32969  0x04d7219a /*zone_id*/,
32970  &kAtcAllZoneContext /*zone_context*/,
32971  2 /*num_eras*/,
32972  kAtcZoneEraAfrica_Abidjan /*eras*/,
32973  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
32974 };
32975 
32976 //---------------------------------------------------------------------------
32977 // Link name: Africa/Porto-Novo -> Africa/Lagos
32978 //---------------------------------------------------------------------------
32979 
32980 static const char kAtcZoneNameAfrica_Porto_Novo[] = "Africa/Porto-Novo";
32981 
32982 const AtcZoneInfo kAtcAllZoneAfrica_Porto_Novo = {
32983  kAtcZoneNameAfrica_Porto_Novo /*name*/,
32984  0x3d1bf95d /*zone_id*/,
32985  &kAtcAllZoneContext /*zone_context*/,
32986  5 /*num_eras*/,
32987  kAtcZoneEraAfrica_Lagos /*eras*/,
32988  &kAtcAllZoneAfrica_Lagos /*target_info*/,
32989 };
32990 
32991 //---------------------------------------------------------------------------
32992 // Link name: Africa/Timbuktu -> Africa/Abidjan
32993 //---------------------------------------------------------------------------
32994 
32995 static const char kAtcZoneNameAfrica_Timbuktu[] = "Africa/Timbuktu";
32996 
32997 const AtcZoneInfo kAtcAllZoneAfrica_Timbuktu = {
32998  kAtcZoneNameAfrica_Timbuktu /*name*/,
32999  0xb164d56f /*zone_id*/,
33000  &kAtcAllZoneContext /*zone_context*/,
33001  2 /*num_eras*/,
33002  kAtcZoneEraAfrica_Abidjan /*eras*/,
33003  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
33004 };
33005 
33006 //---------------------------------------------------------------------------
33007 // Link name: America/Anguilla -> America/Puerto_Rico
33008 //---------------------------------------------------------------------------
33009 
33010 static const char kAtcZoneNameAmerica_Anguilla[] = "America/Anguilla";
33011 
33012 const AtcZoneInfo kAtcAllZoneAmerica_Anguilla = {
33013  kAtcZoneNameAmerica_Anguilla /*name*/,
33014  0xafe31333 /*zone_id*/,
33015  &kAtcAllZoneContext /*zone_context*/,
33016  4 /*num_eras*/,
33017  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33018  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33019 };
33020 
33021 //---------------------------------------------------------------------------
33022 // Link name: America/Antigua -> America/Puerto_Rico
33023 //---------------------------------------------------------------------------
33024 
33025 static const char kAtcZoneNameAmerica_Antigua[] = "America/Antigua";
33026 
33027 const AtcZoneInfo kAtcAllZoneAmerica_Antigua = {
33028  kAtcZoneNameAmerica_Antigua /*name*/,
33029  0xc067a32f /*zone_id*/,
33030  &kAtcAllZoneContext /*zone_context*/,
33031  4 /*num_eras*/,
33032  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33033  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33034 };
33035 
33036 //---------------------------------------------------------------------------
33037 // Link name: America/Argentina/ComodRivadavia -> America/Argentina/Catamarca
33038 //---------------------------------------------------------------------------
33039 
33040 static const char kAtcZoneNameAmerica_Argentina_ComodRivadavia[] = "America/Argentina/ComodRivadavia";
33041 
33042 const AtcZoneInfo kAtcAllZoneAmerica_Argentina_ComodRivadavia = {
33043  kAtcZoneNameAmerica_Argentina_ComodRivadavia /*name*/,
33044  0x22758877 /*zone_id*/,
33045  &kAtcAllZoneContext /*zone_context*/,
33046  12 /*num_eras*/,
33047  kAtcZoneEraAmerica_Argentina_Catamarca /*eras*/,
33048  &kAtcAllZoneAmerica_Argentina_Catamarca /*target_info*/,
33049 };
33050 
33051 //---------------------------------------------------------------------------
33052 // Link name: America/Aruba -> America/Puerto_Rico
33053 //---------------------------------------------------------------------------
33054 
33055 static const char kAtcZoneNameAmerica_Aruba[] = "America/Aruba";
33056 
33057 const AtcZoneInfo kAtcAllZoneAmerica_Aruba = {
33058  kAtcZoneNameAmerica_Aruba /*name*/,
33059  0x97cf8651 /*zone_id*/,
33060  &kAtcAllZoneContext /*zone_context*/,
33061  4 /*num_eras*/,
33062  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33063  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33064 };
33065 
33066 //---------------------------------------------------------------------------
33067 // Link name: America/Atikokan -> America/Panama
33068 //---------------------------------------------------------------------------
33069 
33070 static const char kAtcZoneNameAmerica_Atikokan[] = "America/Atikokan";
33071 
33072 const AtcZoneInfo kAtcAllZoneAmerica_Atikokan = {
33073  kAtcZoneNameAmerica_Atikokan /*name*/,
33074  0x81b92098 /*zone_id*/,
33075  &kAtcAllZoneContext /*zone_context*/,
33076  3 /*num_eras*/,
33077  kAtcZoneEraAmerica_Panama /*eras*/,
33078  &kAtcAllZoneAmerica_Panama /*target_info*/,
33079 };
33080 
33081 //---------------------------------------------------------------------------
33082 // Link name: America/Atka -> America/Adak
33083 //---------------------------------------------------------------------------
33084 
33085 static const char kAtcZoneNameAmerica_Atka[] = "America/Atka";
33086 
33087 const AtcZoneInfo kAtcAllZoneAmerica_Atka = {
33088  kAtcZoneNameAmerica_Atka /*name*/,
33089  0x97fe8f27 /*zone_id*/,
33090  &kAtcAllZoneContext /*zone_context*/,
33091  9 /*num_eras*/,
33092  kAtcZoneEraAmerica_Adak /*eras*/,
33093  &kAtcAllZoneAmerica_Adak /*target_info*/,
33094 };
33095 
33096 //---------------------------------------------------------------------------
33097 // Link name: America/Blanc-Sablon -> America/Puerto_Rico
33098 //---------------------------------------------------------------------------
33099 
33100 static const char kAtcZoneNameAmerica_Blanc_Sablon[] = "America/Blanc-Sablon";
33101 
33102 const AtcZoneInfo kAtcAllZoneAmerica_Blanc_Sablon = {
33103  kAtcZoneNameAmerica_Blanc_Sablon /*name*/,
33104  0x6e299892 /*zone_id*/,
33105  &kAtcAllZoneContext /*zone_context*/,
33106  4 /*num_eras*/,
33107  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33108  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33109 };
33110 
33111 //---------------------------------------------------------------------------
33112 // Link name: America/Buenos_Aires -> America/Argentina/Buenos_Aires
33113 //---------------------------------------------------------------------------
33114 
33115 static const char kAtcZoneNameAmerica_Buenos_Aires[] = "America/Buenos_Aires";
33116 
33117 const AtcZoneInfo kAtcAllZoneAmerica_Buenos_Aires = {
33118  kAtcZoneNameAmerica_Buenos_Aires /*name*/,
33119  0x67d79a05 /*zone_id*/,
33120  &kAtcAllZoneContext /*zone_context*/,
33121  7 /*num_eras*/,
33122  kAtcZoneEraAmerica_Argentina_Buenos_Aires /*eras*/,
33123  &kAtcAllZoneAmerica_Argentina_Buenos_Aires /*target_info*/,
33124 };
33125 
33126 //---------------------------------------------------------------------------
33127 // Link name: America/Catamarca -> America/Argentina/Catamarca
33128 //---------------------------------------------------------------------------
33129 
33130 static const char kAtcZoneNameAmerica_Catamarca[] = "America/Catamarca";
33131 
33132 const AtcZoneInfo kAtcAllZoneAmerica_Catamarca = {
33133  kAtcZoneNameAmerica_Catamarca /*name*/,
33134  0x5036e963 /*zone_id*/,
33135  &kAtcAllZoneContext /*zone_context*/,
33136  12 /*num_eras*/,
33137  kAtcZoneEraAmerica_Argentina_Catamarca /*eras*/,
33138  &kAtcAllZoneAmerica_Argentina_Catamarca /*target_info*/,
33139 };
33140 
33141 //---------------------------------------------------------------------------
33142 // Link name: America/Cayman -> America/Panama
33143 //---------------------------------------------------------------------------
33144 
33145 static const char kAtcZoneNameAmerica_Cayman[] = "America/Cayman";
33146 
33147 const AtcZoneInfo kAtcAllZoneAmerica_Cayman = {
33148  kAtcZoneNameAmerica_Cayman /*name*/,
33149  0x953961df /*zone_id*/,
33150  &kAtcAllZoneContext /*zone_context*/,
33151  3 /*num_eras*/,
33152  kAtcZoneEraAmerica_Panama /*eras*/,
33153  &kAtcAllZoneAmerica_Panama /*target_info*/,
33154 };
33155 
33156 //---------------------------------------------------------------------------
33157 // Link name: America/Coral_Harbour -> America/Panama
33158 //---------------------------------------------------------------------------
33159 
33160 static const char kAtcZoneNameAmerica_Coral_Harbour[] = "America/Coral_Harbour";
33161 
33162 const AtcZoneInfo kAtcAllZoneAmerica_Coral_Harbour = {
33163  kAtcZoneNameAmerica_Coral_Harbour /*name*/,
33164  0xabcb7569 /*zone_id*/,
33165  &kAtcAllZoneContext /*zone_context*/,
33166  3 /*num_eras*/,
33167  kAtcZoneEraAmerica_Panama /*eras*/,
33168  &kAtcAllZoneAmerica_Panama /*target_info*/,
33169 };
33170 
33171 //---------------------------------------------------------------------------
33172 // Link name: America/Cordoba -> America/Argentina/Cordoba
33173 //---------------------------------------------------------------------------
33174 
33175 static const char kAtcZoneNameAmerica_Cordoba[] = "America/Cordoba";
33176 
33177 const AtcZoneInfo kAtcAllZoneAmerica_Cordoba = {
33178  kAtcZoneNameAmerica_Cordoba /*name*/,
33179  0x5c8a7600 /*zone_id*/,
33180  &kAtcAllZoneContext /*zone_context*/,
33181  9 /*num_eras*/,
33182  kAtcZoneEraAmerica_Argentina_Cordoba /*eras*/,
33183  &kAtcAllZoneAmerica_Argentina_Cordoba /*target_info*/,
33184 };
33185 
33186 //---------------------------------------------------------------------------
33187 // Link name: America/Creston -> America/Phoenix
33188 //---------------------------------------------------------------------------
33189 
33190 static const char kAtcZoneNameAmerica_Creston[] = "America/Creston";
33191 
33192 const AtcZoneInfo kAtcAllZoneAmerica_Creston = {
33193  kAtcZoneNameAmerica_Creston /*name*/,
33194  0x62a70204 /*zone_id*/,
33195  &kAtcAllZoneContext /*zone_context*/,
33196  7 /*num_eras*/,
33197  kAtcZoneEraAmerica_Phoenix /*eras*/,
33198  &kAtcAllZoneAmerica_Phoenix /*target_info*/,
33199 };
33200 
33201 //---------------------------------------------------------------------------
33202 // Link name: America/Curacao -> America/Puerto_Rico
33203 //---------------------------------------------------------------------------
33204 
33205 static const char kAtcZoneNameAmerica_Curacao[] = "America/Curacao";
33206 
33207 const AtcZoneInfo kAtcAllZoneAmerica_Curacao = {
33208  kAtcZoneNameAmerica_Curacao /*name*/,
33209  0x6a879184 /*zone_id*/,
33210  &kAtcAllZoneContext /*zone_context*/,
33211  4 /*num_eras*/,
33212  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33213  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33214 };
33215 
33216 //---------------------------------------------------------------------------
33217 // Link name: America/Dominica -> America/Puerto_Rico
33218 //---------------------------------------------------------------------------
33219 
33220 static const char kAtcZoneNameAmerica_Dominica[] = "America/Dominica";
33221 
33222 const AtcZoneInfo kAtcAllZoneAmerica_Dominica = {
33223  kAtcZoneNameAmerica_Dominica /*name*/,
33224  0xcecb4c4a /*zone_id*/,
33225  &kAtcAllZoneContext /*zone_context*/,
33226  4 /*num_eras*/,
33227  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33228  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33229 };
33230 
33231 //---------------------------------------------------------------------------
33232 // Link name: America/Ensenada -> America/Tijuana
33233 //---------------------------------------------------------------------------
33234 
33235 static const char kAtcZoneNameAmerica_Ensenada[] = "America/Ensenada";
33236 
33237 const AtcZoneInfo kAtcAllZoneAmerica_Ensenada = {
33238  kAtcZoneNameAmerica_Ensenada /*name*/,
33239  0x7bc95445 /*zone_id*/,
33240  &kAtcAllZoneContext /*zone_context*/,
33241  19 /*num_eras*/,
33242  kAtcZoneEraAmerica_Tijuana /*eras*/,
33243  &kAtcAllZoneAmerica_Tijuana /*target_info*/,
33244 };
33245 
33246 //---------------------------------------------------------------------------
33247 // Link name: America/Fort_Wayne -> America/Indiana/Indianapolis
33248 //---------------------------------------------------------------------------
33249 
33250 static const char kAtcZoneNameAmerica_Fort_Wayne[] = "America/Fort_Wayne";
33251 
33252 const AtcZoneInfo kAtcAllZoneAmerica_Fort_Wayne = {
33253  kAtcZoneNameAmerica_Fort_Wayne /*name*/,
33254  0x7eaaaf24 /*zone_id*/,
33255  &kAtcAllZoneContext /*zone_context*/,
33256  11 /*num_eras*/,
33257  kAtcZoneEraAmerica_Indiana_Indianapolis /*eras*/,
33258  &kAtcAllZoneAmerica_Indiana_Indianapolis /*target_info*/,
33259 };
33260 
33261 //---------------------------------------------------------------------------
33262 // Link name: America/Godthab -> America/Nuuk
33263 //---------------------------------------------------------------------------
33264 
33265 static const char kAtcZoneNameAmerica_Godthab[] = "America/Godthab";
33266 
33267 const AtcZoneInfo kAtcAllZoneAmerica_Godthab = {
33268  kAtcZoneNameAmerica_Godthab /*name*/,
33269  0x8f7eba1f /*zone_id*/,
33270  &kAtcAllZoneContext /*zone_context*/,
33271  4 /*num_eras*/,
33272  kAtcZoneEraAmerica_Nuuk /*eras*/,
33273  &kAtcAllZoneAmerica_Nuuk /*target_info*/,
33274 };
33275 
33276 //---------------------------------------------------------------------------
33277 // Link name: America/Grenada -> America/Puerto_Rico
33278 //---------------------------------------------------------------------------
33279 
33280 static const char kAtcZoneNameAmerica_Grenada[] = "America/Grenada";
33281 
33282 const AtcZoneInfo kAtcAllZoneAmerica_Grenada = {
33283  kAtcZoneNameAmerica_Grenada /*name*/,
33284  0x968ce4d8 /*zone_id*/,
33285  &kAtcAllZoneContext /*zone_context*/,
33286  4 /*num_eras*/,
33287  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33288  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33289 };
33290 
33291 //---------------------------------------------------------------------------
33292 // Link name: America/Guadeloupe -> America/Puerto_Rico
33293 //---------------------------------------------------------------------------
33294 
33295 static const char kAtcZoneNameAmerica_Guadeloupe[] = "America/Guadeloupe";
33296 
33297 const AtcZoneInfo kAtcAllZoneAmerica_Guadeloupe = {
33298  kAtcZoneNameAmerica_Guadeloupe /*name*/,
33299  0xcd1f8a31 /*zone_id*/,
33300  &kAtcAllZoneContext /*zone_context*/,
33301  4 /*num_eras*/,
33302  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33303  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33304 };
33305 
33306 //---------------------------------------------------------------------------
33307 // Link name: America/Indianapolis -> America/Indiana/Indianapolis
33308 //---------------------------------------------------------------------------
33309 
33310 static const char kAtcZoneNameAmerica_Indianapolis[] = "America/Indianapolis";
33311 
33312 const AtcZoneInfo kAtcAllZoneAmerica_Indianapolis = {
33313  kAtcZoneNameAmerica_Indianapolis /*name*/,
33314  0x6a009ae1 /*zone_id*/,
33315  &kAtcAllZoneContext /*zone_context*/,
33316  11 /*num_eras*/,
33317  kAtcZoneEraAmerica_Indiana_Indianapolis /*eras*/,
33318  &kAtcAllZoneAmerica_Indiana_Indianapolis /*target_info*/,
33319 };
33320 
33321 //---------------------------------------------------------------------------
33322 // Link name: America/Jujuy -> America/Argentina/Jujuy
33323 //---------------------------------------------------------------------------
33324 
33325 static const char kAtcZoneNameAmerica_Jujuy[] = "America/Jujuy";
33326 
33327 const AtcZoneInfo kAtcAllZoneAmerica_Jujuy = {
33328  kAtcZoneNameAmerica_Jujuy /*name*/,
33329  0x9873dbbd /*zone_id*/,
33330  &kAtcAllZoneContext /*zone_context*/,
33331  13 /*num_eras*/,
33332  kAtcZoneEraAmerica_Argentina_Jujuy /*eras*/,
33333  &kAtcAllZoneAmerica_Argentina_Jujuy /*target_info*/,
33334 };
33335 
33336 //---------------------------------------------------------------------------
33337 // Link name: America/Knox_IN -> America/Indiana/Knox
33338 //---------------------------------------------------------------------------
33339 
33340 static const char kAtcZoneNameAmerica_Knox_IN[] = "America/Knox_IN";
33341 
33342 const AtcZoneInfo kAtcAllZoneAmerica_Knox_IN = {
33343  kAtcZoneNameAmerica_Knox_IN /*name*/,
33344  0xc1db9a1c /*zone_id*/,
33345  &kAtcAllZoneContext /*zone_context*/,
33346  7 /*num_eras*/,
33347  kAtcZoneEraAmerica_Indiana_Knox /*eras*/,
33348  &kAtcAllZoneAmerica_Indiana_Knox /*target_info*/,
33349 };
33350 
33351 //---------------------------------------------------------------------------
33352 // Link name: America/Kralendijk -> America/Puerto_Rico
33353 //---------------------------------------------------------------------------
33354 
33355 static const char kAtcZoneNameAmerica_Kralendijk[] = "America/Kralendijk";
33356 
33357 const AtcZoneInfo kAtcAllZoneAmerica_Kralendijk = {
33358  kAtcZoneNameAmerica_Kralendijk /*name*/,
33359  0xe7c456c5 /*zone_id*/,
33360  &kAtcAllZoneContext /*zone_context*/,
33361  4 /*num_eras*/,
33362  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33363  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33364 };
33365 
33366 //---------------------------------------------------------------------------
33367 // Link name: America/Louisville -> America/Kentucky/Louisville
33368 //---------------------------------------------------------------------------
33369 
33370 static const char kAtcZoneNameAmerica_Louisville[] = "America/Louisville";
33371 
33372 const AtcZoneInfo kAtcAllZoneAmerica_Louisville = {
33373  kAtcZoneNameAmerica_Louisville /*name*/,
33374  0x3dcb47ee /*zone_id*/,
33375  &kAtcAllZoneContext /*zone_context*/,
33376  9 /*num_eras*/,
33377  kAtcZoneEraAmerica_Kentucky_Louisville /*eras*/,
33378  &kAtcAllZoneAmerica_Kentucky_Louisville /*target_info*/,
33379 };
33380 
33381 //---------------------------------------------------------------------------
33382 // Link name: America/Lower_Princes -> America/Puerto_Rico
33383 //---------------------------------------------------------------------------
33384 
33385 static const char kAtcZoneNameAmerica_Lower_Princes[] = "America/Lower_Princes";
33386 
33387 const AtcZoneInfo kAtcAllZoneAmerica_Lower_Princes = {
33388  kAtcZoneNameAmerica_Lower_Princes /*name*/,
33389  0x6ae45b62 /*zone_id*/,
33390  &kAtcAllZoneContext /*zone_context*/,
33391  4 /*num_eras*/,
33392  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33393  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33394 };
33395 
33396 //---------------------------------------------------------------------------
33397 // Link name: America/Marigot -> America/Puerto_Rico
33398 //---------------------------------------------------------------------------
33399 
33400 static const char kAtcZoneNameAmerica_Marigot[] = "America/Marigot";
33401 
33402 const AtcZoneInfo kAtcAllZoneAmerica_Marigot = {
33403  kAtcZoneNameAmerica_Marigot /*name*/,
33404  0x3dab3a59 /*zone_id*/,
33405  &kAtcAllZoneContext /*zone_context*/,
33406  4 /*num_eras*/,
33407  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33408  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33409 };
33410 
33411 //---------------------------------------------------------------------------
33412 // Link name: America/Mendoza -> America/Argentina/Mendoza
33413 //---------------------------------------------------------------------------
33414 
33415 static const char kAtcZoneNameAmerica_Mendoza[] = "America/Mendoza";
33416 
33417 const AtcZoneInfo kAtcAllZoneAmerica_Mendoza = {
33418  kAtcZoneNameAmerica_Mendoza /*name*/,
33419  0x46b4e054 /*zone_id*/,
33420  &kAtcAllZoneContext /*zone_context*/,
33421  16 /*num_eras*/,
33422  kAtcZoneEraAmerica_Argentina_Mendoza /*eras*/,
33423  &kAtcAllZoneAmerica_Argentina_Mendoza /*target_info*/,
33424 };
33425 
33426 //---------------------------------------------------------------------------
33427 // Link name: America/Montreal -> America/Toronto
33428 //---------------------------------------------------------------------------
33429 
33430 static const char kAtcZoneNameAmerica_Montreal[] = "America/Montreal";
33431 
33432 const AtcZoneInfo kAtcAllZoneAmerica_Montreal = {
33433  kAtcZoneNameAmerica_Montreal /*name*/,
33434  0x203a1ea8 /*zone_id*/,
33435  &kAtcAllZoneContext /*zone_context*/,
33436  6 /*num_eras*/,
33437  kAtcZoneEraAmerica_Toronto /*eras*/,
33438  &kAtcAllZoneAmerica_Toronto /*target_info*/,
33439 };
33440 
33441 //---------------------------------------------------------------------------
33442 // Link name: America/Montserrat -> America/Puerto_Rico
33443 //---------------------------------------------------------------------------
33444 
33445 static const char kAtcZoneNameAmerica_Montserrat[] = "America/Montserrat";
33446 
33447 const AtcZoneInfo kAtcAllZoneAmerica_Montserrat = {
33448  kAtcZoneNameAmerica_Montserrat /*name*/,
33449  0x199b0a35 /*zone_id*/,
33450  &kAtcAllZoneContext /*zone_context*/,
33451  4 /*num_eras*/,
33452  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33453  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33454 };
33455 
33456 //---------------------------------------------------------------------------
33457 // Link name: America/Nassau -> America/Toronto
33458 //---------------------------------------------------------------------------
33459 
33460 static const char kAtcZoneNameAmerica_Nassau[] = "America/Nassau";
33461 
33462 const AtcZoneInfo kAtcAllZoneAmerica_Nassau = {
33463  kAtcZoneNameAmerica_Nassau /*name*/,
33464  0xaedef011 /*zone_id*/,
33465  &kAtcAllZoneContext /*zone_context*/,
33466  6 /*num_eras*/,
33467  kAtcZoneEraAmerica_Toronto /*eras*/,
33468  &kAtcAllZoneAmerica_Toronto /*target_info*/,
33469 };
33470 
33471 //---------------------------------------------------------------------------
33472 // Link name: America/Nipigon -> America/Toronto
33473 //---------------------------------------------------------------------------
33474 
33475 static const char kAtcZoneNameAmerica_Nipigon[] = "America/Nipigon";
33476 
33477 const AtcZoneInfo kAtcAllZoneAmerica_Nipigon = {
33478  kAtcZoneNameAmerica_Nipigon /*name*/,
33479  0x9d2a8b1a /*zone_id*/,
33480  &kAtcAllZoneContext /*zone_context*/,
33481  6 /*num_eras*/,
33482  kAtcZoneEraAmerica_Toronto /*eras*/,
33483  &kAtcAllZoneAmerica_Toronto /*target_info*/,
33484 };
33485 
33486 //---------------------------------------------------------------------------
33487 // Link name: America/Pangnirtung -> America/Iqaluit
33488 //---------------------------------------------------------------------------
33489 
33490 static const char kAtcZoneNameAmerica_Pangnirtung[] = "America/Pangnirtung";
33491 
33492 const AtcZoneInfo kAtcAllZoneAmerica_Pangnirtung = {
33493  kAtcZoneNameAmerica_Pangnirtung /*name*/,
33494  0x2d999193 /*zone_id*/,
33495  &kAtcAllZoneContext /*zone_context*/,
33496  4 /*num_eras*/,
33497  kAtcZoneEraAmerica_Iqaluit /*eras*/,
33498  &kAtcAllZoneAmerica_Iqaluit /*target_info*/,
33499 };
33500 
33501 //---------------------------------------------------------------------------
33502 // Link name: America/Port_of_Spain -> America/Puerto_Rico
33503 //---------------------------------------------------------------------------
33504 
33505 static const char kAtcZoneNameAmerica_Port_of_Spain[] = "America/Port_of_Spain";
33506 
33507 const AtcZoneInfo kAtcAllZoneAmerica_Port_of_Spain = {
33508  kAtcZoneNameAmerica_Port_of_Spain /*name*/,
33509  0xd8b28d59 /*zone_id*/,
33510  &kAtcAllZoneContext /*zone_context*/,
33511  4 /*num_eras*/,
33512  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33513  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33514 };
33515 
33516 //---------------------------------------------------------------------------
33517 // Link name: America/Porto_Acre -> America/Rio_Branco
33518 //---------------------------------------------------------------------------
33519 
33520 static const char kAtcZoneNameAmerica_Porto_Acre[] = "America/Porto_Acre";
33521 
33522 const AtcZoneInfo kAtcAllZoneAmerica_Porto_Acre = {
33523  kAtcZoneNameAmerica_Porto_Acre /*name*/,
33524  0xcce5bf54 /*zone_id*/,
33525  &kAtcAllZoneContext /*zone_context*/,
33526  5 /*num_eras*/,
33527  kAtcZoneEraAmerica_Rio_Branco /*eras*/,
33528  &kAtcAllZoneAmerica_Rio_Branco /*target_info*/,
33529 };
33530 
33531 //---------------------------------------------------------------------------
33532 // Link name: America/Rainy_River -> America/Winnipeg
33533 //---------------------------------------------------------------------------
33534 
33535 static const char kAtcZoneNameAmerica_Rainy_River[] = "America/Rainy_River";
33536 
33537 const AtcZoneInfo kAtcAllZoneAmerica_Rainy_River = {
33538  kAtcZoneNameAmerica_Rainy_River /*name*/,
33539  0x9cd58a10 /*zone_id*/,
33540  &kAtcAllZoneContext /*zone_context*/,
33541  3 /*num_eras*/,
33542  kAtcZoneEraAmerica_Winnipeg /*eras*/,
33543  &kAtcAllZoneAmerica_Winnipeg /*target_info*/,
33544 };
33545 
33546 //---------------------------------------------------------------------------
33547 // Link name: America/Rosario -> America/Argentina/Cordoba
33548 //---------------------------------------------------------------------------
33549 
33550 static const char kAtcZoneNameAmerica_Rosario[] = "America/Rosario";
33551 
33552 const AtcZoneInfo kAtcAllZoneAmerica_Rosario = {
33553  kAtcZoneNameAmerica_Rosario /*name*/,
33554  0xdf448665 /*zone_id*/,
33555  &kAtcAllZoneContext /*zone_context*/,
33556  9 /*num_eras*/,
33557  kAtcZoneEraAmerica_Argentina_Cordoba /*eras*/,
33558  &kAtcAllZoneAmerica_Argentina_Cordoba /*target_info*/,
33559 };
33560 
33561 //---------------------------------------------------------------------------
33562 // Link name: America/Santa_Isabel -> America/Tijuana
33563 //---------------------------------------------------------------------------
33564 
33565 static const char kAtcZoneNameAmerica_Santa_Isabel[] = "America/Santa_Isabel";
33566 
33567 const AtcZoneInfo kAtcAllZoneAmerica_Santa_Isabel = {
33568  kAtcZoneNameAmerica_Santa_Isabel /*name*/,
33569  0xfd18a56c /*zone_id*/,
33570  &kAtcAllZoneContext /*zone_context*/,
33571  19 /*num_eras*/,
33572  kAtcZoneEraAmerica_Tijuana /*eras*/,
33573  &kAtcAllZoneAmerica_Tijuana /*target_info*/,
33574 };
33575 
33576 //---------------------------------------------------------------------------
33577 // Link name: America/Shiprock -> America/Denver
33578 //---------------------------------------------------------------------------
33579 
33580 static const char kAtcZoneNameAmerica_Shiprock[] = "America/Shiprock";
33581 
33582 const AtcZoneInfo kAtcAllZoneAmerica_Shiprock = {
33583  kAtcZoneNameAmerica_Shiprock /*name*/,
33584  0x82fb7049 /*zone_id*/,
33585  &kAtcAllZoneContext /*zone_context*/,
33586  6 /*num_eras*/,
33587  kAtcZoneEraAmerica_Denver /*eras*/,
33588  &kAtcAllZoneAmerica_Denver /*target_info*/,
33589 };
33590 
33591 //---------------------------------------------------------------------------
33592 // Link name: America/St_Barthelemy -> America/Puerto_Rico
33593 //---------------------------------------------------------------------------
33594 
33595 static const char kAtcZoneNameAmerica_St_Barthelemy[] = "America/St_Barthelemy";
33596 
33597 const AtcZoneInfo kAtcAllZoneAmerica_St_Barthelemy = {
33598  kAtcZoneNameAmerica_St_Barthelemy /*name*/,
33599  0x054e6a79 /*zone_id*/,
33600  &kAtcAllZoneContext /*zone_context*/,
33601  4 /*num_eras*/,
33602  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33603  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33604 };
33605 
33606 //---------------------------------------------------------------------------
33607 // Link name: America/St_Kitts -> America/Puerto_Rico
33608 //---------------------------------------------------------------------------
33609 
33610 static const char kAtcZoneNameAmerica_St_Kitts[] = "America/St_Kitts";
33611 
33612 const AtcZoneInfo kAtcAllZoneAmerica_St_Kitts = {
33613  kAtcZoneNameAmerica_St_Kitts /*name*/,
33614  0x04c0507b /*zone_id*/,
33615  &kAtcAllZoneContext /*zone_context*/,
33616  4 /*num_eras*/,
33617  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33618  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33619 };
33620 
33621 //---------------------------------------------------------------------------
33622 // Link name: America/St_Lucia -> America/Puerto_Rico
33623 //---------------------------------------------------------------------------
33624 
33625 static const char kAtcZoneNameAmerica_St_Lucia[] = "America/St_Lucia";
33626 
33627 const AtcZoneInfo kAtcAllZoneAmerica_St_Lucia = {
33628  kAtcZoneNameAmerica_St_Lucia /*name*/,
33629  0x04d8b3ba /*zone_id*/,
33630  &kAtcAllZoneContext /*zone_context*/,
33631  4 /*num_eras*/,
33632  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33633  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33634 };
33635 
33636 //---------------------------------------------------------------------------
33637 // Link name: America/St_Thomas -> America/Puerto_Rico
33638 //---------------------------------------------------------------------------
33639 
33640 static const char kAtcZoneNameAmerica_St_Thomas[] = "America/St_Thomas";
33641 
33642 const AtcZoneInfo kAtcAllZoneAmerica_St_Thomas = {
33643  kAtcZoneNameAmerica_St_Thomas /*name*/,
33644  0xb1b3d778 /*zone_id*/,
33645  &kAtcAllZoneContext /*zone_context*/,
33646  4 /*num_eras*/,
33647  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33648  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33649 };
33650 
33651 //---------------------------------------------------------------------------
33652 // Link name: America/St_Vincent -> America/Puerto_Rico
33653 //---------------------------------------------------------------------------
33654 
33655 static const char kAtcZoneNameAmerica_St_Vincent[] = "America/St_Vincent";
33656 
33657 const AtcZoneInfo kAtcAllZoneAmerica_St_Vincent = {
33658  kAtcZoneNameAmerica_St_Vincent /*name*/,
33659  0x8460e523 /*zone_id*/,
33660  &kAtcAllZoneContext /*zone_context*/,
33661  4 /*num_eras*/,
33662  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33663  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33664 };
33665 
33666 //---------------------------------------------------------------------------
33667 // Link name: America/Thunder_Bay -> America/Toronto
33668 //---------------------------------------------------------------------------
33669 
33670 static const char kAtcZoneNameAmerica_Thunder_Bay[] = "America/Thunder_Bay";
33671 
33672 const AtcZoneInfo kAtcAllZoneAmerica_Thunder_Bay = {
33673  kAtcZoneNameAmerica_Thunder_Bay /*name*/,
33674  0xf962e71b /*zone_id*/,
33675  &kAtcAllZoneContext /*zone_context*/,
33676  6 /*num_eras*/,
33677  kAtcZoneEraAmerica_Toronto /*eras*/,
33678  &kAtcAllZoneAmerica_Toronto /*target_info*/,
33679 };
33680 
33681 //---------------------------------------------------------------------------
33682 // Link name: America/Tortola -> America/Puerto_Rico
33683 //---------------------------------------------------------------------------
33684 
33685 static const char kAtcZoneNameAmerica_Tortola[] = "America/Tortola";
33686 
33687 const AtcZoneInfo kAtcAllZoneAmerica_Tortola = {
33688  kAtcZoneNameAmerica_Tortola /*name*/,
33689  0x7931462b /*zone_id*/,
33690  &kAtcAllZoneContext /*zone_context*/,
33691  4 /*num_eras*/,
33692  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33693  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33694 };
33695 
33696 //---------------------------------------------------------------------------
33697 // Link name: America/Virgin -> America/Puerto_Rico
33698 //---------------------------------------------------------------------------
33699 
33700 static const char kAtcZoneNameAmerica_Virgin[] = "America/Virgin";
33701 
33702 const AtcZoneInfo kAtcAllZoneAmerica_Virgin = {
33703  kAtcZoneNameAmerica_Virgin /*name*/,
33704  0xc2183ab5 /*zone_id*/,
33705  &kAtcAllZoneContext /*zone_context*/,
33706  4 /*num_eras*/,
33707  kAtcZoneEraAmerica_Puerto_Rico /*eras*/,
33708  &kAtcAllZoneAmerica_Puerto_Rico /*target_info*/,
33709 };
33710 
33711 //---------------------------------------------------------------------------
33712 // Link name: America/Yellowknife -> America/Edmonton
33713 //---------------------------------------------------------------------------
33714 
33715 static const char kAtcZoneNameAmerica_Yellowknife[] = "America/Yellowknife";
33716 
33717 const AtcZoneInfo kAtcAllZoneAmerica_Yellowknife = {
33718  kAtcZoneNameAmerica_Yellowknife /*name*/,
33719  0x0f76c76f /*zone_id*/,
33720  &kAtcAllZoneContext /*zone_context*/,
33721  3 /*num_eras*/,
33722  kAtcZoneEraAmerica_Edmonton /*eras*/,
33723  &kAtcAllZoneAmerica_Edmonton /*target_info*/,
33724 };
33725 
33726 //---------------------------------------------------------------------------
33727 // Link name: Antarctica/DumontDUrville -> Pacific/Port_Moresby
33728 //---------------------------------------------------------------------------
33729 
33730 static const char kAtcZoneNameAntarctica_DumontDUrville[] = "Antarctica/DumontDUrville";
33731 
33732 const AtcZoneInfo kAtcAllZoneAntarctica_DumontDUrville = {
33733  kAtcZoneNameAntarctica_DumontDUrville /*name*/,
33734  0x5a3c656c /*zone_id*/,
33735  &kAtcAllZoneContext /*zone_context*/,
33736  3 /*num_eras*/,
33737  kAtcZoneEraPacific_Port_Moresby /*eras*/,
33738  &kAtcAllZonePacific_Port_Moresby /*target_info*/,
33739 };
33740 
33741 //---------------------------------------------------------------------------
33742 // Link name: Antarctica/McMurdo -> Pacific/Auckland
33743 //---------------------------------------------------------------------------
33744 
33745 static const char kAtcZoneNameAntarctica_McMurdo[] = "Antarctica/McMurdo";
33746 
33747 const AtcZoneInfo kAtcAllZoneAntarctica_McMurdo = {
33748  kAtcZoneNameAntarctica_McMurdo /*name*/,
33749  0x6eeb5585 /*zone_id*/,
33750  &kAtcAllZoneContext /*zone_context*/,
33751  3 /*num_eras*/,
33752  kAtcZoneEraPacific_Auckland /*eras*/,
33753  &kAtcAllZonePacific_Auckland /*target_info*/,
33754 };
33755 
33756 //---------------------------------------------------------------------------
33757 // Link name: Antarctica/South_Pole -> Pacific/Auckland
33758 //---------------------------------------------------------------------------
33759 
33760 static const char kAtcZoneNameAntarctica_South_Pole[] = "Antarctica/South_Pole";
33761 
33762 const AtcZoneInfo kAtcAllZoneAntarctica_South_Pole = {
33763  kAtcZoneNameAntarctica_South_Pole /*name*/,
33764  0xcd96b290 /*zone_id*/,
33765  &kAtcAllZoneContext /*zone_context*/,
33766  3 /*num_eras*/,
33767  kAtcZoneEraPacific_Auckland /*eras*/,
33768  &kAtcAllZonePacific_Auckland /*target_info*/,
33769 };
33770 
33771 //---------------------------------------------------------------------------
33772 // Link name: Antarctica/Syowa -> Asia/Riyadh
33773 //---------------------------------------------------------------------------
33774 
33775 static const char kAtcZoneNameAntarctica_Syowa[] = "Antarctica/Syowa";
33776 
33777 const AtcZoneInfo kAtcAllZoneAntarctica_Syowa = {
33778  kAtcZoneNameAntarctica_Syowa /*name*/,
33779  0xe330c7e1 /*zone_id*/,
33780  &kAtcAllZoneContext /*zone_context*/,
33781  2 /*num_eras*/,
33782  kAtcZoneEraAsia_Riyadh /*eras*/,
33783  &kAtcAllZoneAsia_Riyadh /*target_info*/,
33784 };
33785 
33786 //---------------------------------------------------------------------------
33787 // Link name: Antarctica/Vostok -> Asia/Urumqi
33788 //---------------------------------------------------------------------------
33789 
33790 static const char kAtcZoneNameAntarctica_Vostok[] = "Antarctica/Vostok";
33791 
33792 const AtcZoneInfo kAtcAllZoneAntarctica_Vostok = {
33793  kAtcZoneNameAntarctica_Vostok /*name*/,
33794  0x4f966fd4 /*zone_id*/,
33795  &kAtcAllZoneContext /*zone_context*/,
33796  2 /*num_eras*/,
33797  kAtcZoneEraAsia_Urumqi /*eras*/,
33798  &kAtcAllZoneAsia_Urumqi /*target_info*/,
33799 };
33800 
33801 //---------------------------------------------------------------------------
33802 // Link name: Arctic/Longyearbyen -> Europe/Berlin
33803 //---------------------------------------------------------------------------
33804 
33805 static const char kAtcZoneNameArctic_Longyearbyen[] = "Arctic/Longyearbyen";
33806 
33807 const AtcZoneInfo kAtcAllZoneArctic_Longyearbyen = {
33808  kAtcZoneNameArctic_Longyearbyen /*name*/,
33809  0xd23e7859 /*zone_id*/,
33810  &kAtcAllZoneContext /*zone_context*/,
33811  5 /*num_eras*/,
33812  kAtcZoneEraEurope_Berlin /*eras*/,
33813  &kAtcAllZoneEurope_Berlin /*target_info*/,
33814 };
33815 
33816 //---------------------------------------------------------------------------
33817 // Link name: Asia/Aden -> Asia/Riyadh
33818 //---------------------------------------------------------------------------
33819 
33820 static const char kAtcZoneNameAsia_Aden[] = "Asia/Aden";
33821 
33822 const AtcZoneInfo kAtcAllZoneAsia_Aden = {
33823  kAtcZoneNameAsia_Aden /*name*/,
33824  0x1fa7084a /*zone_id*/,
33825  &kAtcAllZoneContext /*zone_context*/,
33826  2 /*num_eras*/,
33827  kAtcZoneEraAsia_Riyadh /*eras*/,
33828  &kAtcAllZoneAsia_Riyadh /*target_info*/,
33829 };
33830 
33831 //---------------------------------------------------------------------------
33832 // Link name: Asia/Ashkhabad -> Asia/Ashgabat
33833 //---------------------------------------------------------------------------
33834 
33835 static const char kAtcZoneNameAsia_Ashkhabad[] = "Asia/Ashkhabad";
33836 
33837 const AtcZoneInfo kAtcAllZoneAsia_Ashkhabad = {
33838  kAtcZoneNameAsia_Ashkhabad /*name*/,
33839  0x15454f09 /*zone_id*/,
33840  &kAtcAllZoneContext /*zone_context*/,
33841  5 /*num_eras*/,
33842  kAtcZoneEraAsia_Ashgabat /*eras*/,
33843  &kAtcAllZoneAsia_Ashgabat /*target_info*/,
33844 };
33845 
33846 //---------------------------------------------------------------------------
33847 // Link name: Asia/Bahrain -> Asia/Qatar
33848 //---------------------------------------------------------------------------
33849 
33850 static const char kAtcZoneNameAsia_Bahrain[] = "Asia/Bahrain";
33851 
33852 const AtcZoneInfo kAtcAllZoneAsia_Bahrain = {
33853  kAtcZoneNameAsia_Bahrain /*name*/,
33854  0x9d078487 /*zone_id*/,
33855  &kAtcAllZoneContext /*zone_context*/,
33856  3 /*num_eras*/,
33857  kAtcZoneEraAsia_Qatar /*eras*/,
33858  &kAtcAllZoneAsia_Qatar /*target_info*/,
33859 };
33860 
33861 //---------------------------------------------------------------------------
33862 // Link name: Asia/Brunei -> Asia/Kuching
33863 //---------------------------------------------------------------------------
33864 
33865 static const char kAtcZoneNameAsia_Brunei[] = "Asia/Brunei";
33866 
33867 const AtcZoneInfo kAtcAllZoneAsia_Brunei = {
33868  kAtcZoneNameAsia_Brunei /*name*/,
33869  0xa8e595f7 /*zone_id*/,
33870  &kAtcAllZoneContext /*zone_context*/,
33871  5 /*num_eras*/,
33872  kAtcZoneEraAsia_Kuching /*eras*/,
33873  &kAtcAllZoneAsia_Kuching /*target_info*/,
33874 };
33875 
33876 //---------------------------------------------------------------------------
33877 // Link name: Asia/Calcutta -> Asia/Kolkata
33878 //---------------------------------------------------------------------------
33879 
33880 static const char kAtcZoneNameAsia_Calcutta[] = "Asia/Calcutta";
33881 
33882 const AtcZoneInfo kAtcAllZoneAsia_Calcutta = {
33883  kAtcZoneNameAsia_Calcutta /*name*/,
33884  0x328a44c3 /*zone_id*/,
33885  &kAtcAllZoneContext /*zone_context*/,
33886  8 /*num_eras*/,
33887  kAtcZoneEraAsia_Kolkata /*eras*/,
33888  &kAtcAllZoneAsia_Kolkata /*target_info*/,
33889 };
33890 
33891 //---------------------------------------------------------------------------
33892 // Link name: Asia/Chongqing -> Asia/Shanghai
33893 //---------------------------------------------------------------------------
33894 
33895 static const char kAtcZoneNameAsia_Chongqing[] = "Asia/Chongqing";
33896 
33897 const AtcZoneInfo kAtcAllZoneAsia_Chongqing = {
33898  kAtcZoneNameAsia_Chongqing /*name*/,
33899  0xf937fb90 /*zone_id*/,
33900  &kAtcAllZoneContext /*zone_context*/,
33901  3 /*num_eras*/,
33902  kAtcZoneEraAsia_Shanghai /*eras*/,
33903  &kAtcAllZoneAsia_Shanghai /*target_info*/,
33904 };
33905 
33906 //---------------------------------------------------------------------------
33907 // Link name: Asia/Chungking -> Asia/Shanghai
33908 //---------------------------------------------------------------------------
33909 
33910 static const char kAtcZoneNameAsia_Chungking[] = "Asia/Chungking";
33911 
33912 const AtcZoneInfo kAtcAllZoneAsia_Chungking = {
33913  kAtcZoneNameAsia_Chungking /*name*/,
33914  0xc7121dd0 /*zone_id*/,
33915  &kAtcAllZoneContext /*zone_context*/,
33916  3 /*num_eras*/,
33917  kAtcZoneEraAsia_Shanghai /*eras*/,
33918  &kAtcAllZoneAsia_Shanghai /*target_info*/,
33919 };
33920 
33921 //---------------------------------------------------------------------------
33922 // Link name: Asia/Dacca -> Asia/Dhaka
33923 //---------------------------------------------------------------------------
33924 
33925 static const char kAtcZoneNameAsia_Dacca[] = "Asia/Dacca";
33926 
33927 const AtcZoneInfo kAtcAllZoneAsia_Dacca = {
33928  kAtcZoneNameAsia_Dacca /*name*/,
33929  0x14bcac5e /*zone_id*/,
33930  &kAtcAllZoneContext /*zone_context*/,
33931  7 /*num_eras*/,
33932  kAtcZoneEraAsia_Dhaka /*eras*/,
33933  &kAtcAllZoneAsia_Dhaka /*target_info*/,
33934 };
33935 
33936 //---------------------------------------------------------------------------
33937 // Link name: Asia/Harbin -> Asia/Shanghai
33938 //---------------------------------------------------------------------------
33939 
33940 static const char kAtcZoneNameAsia_Harbin[] = "Asia/Harbin";
33941 
33942 const AtcZoneInfo kAtcAllZoneAsia_Harbin = {
33943  kAtcZoneNameAsia_Harbin /*name*/,
33944  0xb5af1186 /*zone_id*/,
33945  &kAtcAllZoneContext /*zone_context*/,
33946  3 /*num_eras*/,
33947  kAtcZoneEraAsia_Shanghai /*eras*/,
33948  &kAtcAllZoneAsia_Shanghai /*target_info*/,
33949 };
33950 
33951 //---------------------------------------------------------------------------
33952 // Link name: Asia/Istanbul -> Europe/Istanbul
33953 //---------------------------------------------------------------------------
33954 
33955 static const char kAtcZoneNameAsia_Istanbul[] = "Asia/Istanbul";
33956 
33957 const AtcZoneInfo kAtcAllZoneAsia_Istanbul = {
33958  kAtcZoneNameAsia_Istanbul /*name*/,
33959  0x382e7894 /*zone_id*/,
33960  &kAtcAllZoneContext /*zone_context*/,
33961  13 /*num_eras*/,
33962  kAtcZoneEraEurope_Istanbul /*eras*/,
33963  &kAtcAllZoneEurope_Istanbul /*target_info*/,
33964 };
33965 
33966 //---------------------------------------------------------------------------
33967 // Link name: Asia/Kashgar -> Asia/Urumqi
33968 //---------------------------------------------------------------------------
33969 
33970 static const char kAtcZoneNameAsia_Kashgar[] = "Asia/Kashgar";
33971 
33972 const AtcZoneInfo kAtcAllZoneAsia_Kashgar = {
33973  kAtcZoneNameAsia_Kashgar /*name*/,
33974  0x52955193 /*zone_id*/,
33975  &kAtcAllZoneContext /*zone_context*/,
33976  2 /*num_eras*/,
33977  kAtcZoneEraAsia_Urumqi /*eras*/,
33978  &kAtcAllZoneAsia_Urumqi /*target_info*/,
33979 };
33980 
33981 //---------------------------------------------------------------------------
33982 // Link name: Asia/Katmandu -> Asia/Kathmandu
33983 //---------------------------------------------------------------------------
33984 
33985 static const char kAtcZoneNameAsia_Katmandu[] = "Asia/Katmandu";
33986 
33987 const AtcZoneInfo kAtcAllZoneAsia_Katmandu = {
33988  kAtcZoneNameAsia_Katmandu /*name*/,
33989  0xa7ec12c7 /*zone_id*/,
33990  &kAtcAllZoneContext /*zone_context*/,
33991  3 /*num_eras*/,
33992  kAtcZoneEraAsia_Kathmandu /*eras*/,
33993  &kAtcAllZoneAsia_Kathmandu /*target_info*/,
33994 };
33995 
33996 //---------------------------------------------------------------------------
33997 // Link name: Asia/Kuala_Lumpur -> Asia/Singapore
33998 //---------------------------------------------------------------------------
33999 
34000 static const char kAtcZoneNameAsia_Kuala_Lumpur[] = "Asia/Kuala_Lumpur";
34001 
34002 const AtcZoneInfo kAtcAllZoneAsia_Kuala_Lumpur = {
34003  kAtcZoneNameAsia_Kuala_Lumpur /*name*/,
34004  0x014763c4 /*zone_id*/,
34005  &kAtcAllZoneContext /*zone_context*/,
34006  9 /*num_eras*/,
34007  kAtcZoneEraAsia_Singapore /*eras*/,
34008  &kAtcAllZoneAsia_Singapore /*target_info*/,
34009 };
34010 
34011 //---------------------------------------------------------------------------
34012 // Link name: Asia/Kuwait -> Asia/Riyadh
34013 //---------------------------------------------------------------------------
34014 
34015 static const char kAtcZoneNameAsia_Kuwait[] = "Asia/Kuwait";
34016 
34017 const AtcZoneInfo kAtcAllZoneAsia_Kuwait = {
34018  kAtcZoneNameAsia_Kuwait /*name*/,
34019  0xbe1b2f27 /*zone_id*/,
34020  &kAtcAllZoneContext /*zone_context*/,
34021  2 /*num_eras*/,
34022  kAtcZoneEraAsia_Riyadh /*eras*/,
34023  &kAtcAllZoneAsia_Riyadh /*target_info*/,
34024 };
34025 
34026 //---------------------------------------------------------------------------
34027 // Link name: Asia/Macao -> Asia/Macau
34028 //---------------------------------------------------------------------------
34029 
34030 static const char kAtcZoneNameAsia_Macao[] = "Asia/Macao";
34031 
34032 const AtcZoneInfo kAtcAllZoneAsia_Macao = {
34033  kAtcZoneNameAsia_Macao /*name*/,
34034  0x155f88b3 /*zone_id*/,
34035  &kAtcAllZoneContext /*zone_context*/,
34036  4 /*num_eras*/,
34037  kAtcZoneEraAsia_Macau /*eras*/,
34038  &kAtcAllZoneAsia_Macau /*target_info*/,
34039 };
34040 
34041 //---------------------------------------------------------------------------
34042 // Link name: Asia/Muscat -> Asia/Dubai
34043 //---------------------------------------------------------------------------
34044 
34045 static const char kAtcZoneNameAsia_Muscat[] = "Asia/Muscat";
34046 
34047 const AtcZoneInfo kAtcAllZoneAsia_Muscat = {
34048  kAtcZoneNameAsia_Muscat /*name*/,
34049  0xc2c3565f /*zone_id*/,
34050  &kAtcAllZoneContext /*zone_context*/,
34051  2 /*num_eras*/,
34052  kAtcZoneEraAsia_Dubai /*eras*/,
34053  &kAtcAllZoneAsia_Dubai /*target_info*/,
34054 };
34055 
34056 //---------------------------------------------------------------------------
34057 // Link name: Asia/Phnom_Penh -> Asia/Bangkok
34058 //---------------------------------------------------------------------------
34059 
34060 static const char kAtcZoneNameAsia_Phnom_Penh[] = "Asia/Phnom_Penh";
34061 
34062 const AtcZoneInfo kAtcAllZoneAsia_Phnom_Penh = {
34063  kAtcZoneNameAsia_Phnom_Penh /*name*/,
34064  0xc224945e /*zone_id*/,
34065  &kAtcAllZoneContext /*zone_context*/,
34066  3 /*num_eras*/,
34067  kAtcZoneEraAsia_Bangkok /*eras*/,
34068  &kAtcAllZoneAsia_Bangkok /*target_info*/,
34069 };
34070 
34071 //---------------------------------------------------------------------------
34072 // Link name: Asia/Rangoon -> Asia/Yangon
34073 //---------------------------------------------------------------------------
34074 
34075 static const char kAtcZoneNameAsia_Rangoon[] = "Asia/Rangoon";
34076 
34077 const AtcZoneInfo kAtcAllZoneAsia_Rangoon = {
34078  kAtcZoneNameAsia_Rangoon /*name*/,
34079  0x6d1217c6 /*zone_id*/,
34080  &kAtcAllZoneContext /*zone_context*/,
34081  5 /*num_eras*/,
34082  kAtcZoneEraAsia_Yangon /*eras*/,
34083  &kAtcAllZoneAsia_Yangon /*target_info*/,
34084 };
34085 
34086 //---------------------------------------------------------------------------
34087 // Link name: Asia/Saigon -> Asia/Ho_Chi_Minh
34088 //---------------------------------------------------------------------------
34089 
34090 static const char kAtcZoneNameAsia_Saigon[] = "Asia/Saigon";
34091 
34092 const AtcZoneInfo kAtcAllZoneAsia_Saigon = {
34093  kAtcZoneNameAsia_Saigon /*name*/,
34094  0xcf52f713 /*zone_id*/,
34095  &kAtcAllZoneContext /*zone_context*/,
34096  10 /*num_eras*/,
34097  kAtcZoneEraAsia_Ho_Chi_Minh /*eras*/,
34098  &kAtcAllZoneAsia_Ho_Chi_Minh /*target_info*/,
34099 };
34100 
34101 //---------------------------------------------------------------------------
34102 // Link name: Asia/Tel_Aviv -> Asia/Jerusalem
34103 //---------------------------------------------------------------------------
34104 
34105 static const char kAtcZoneNameAsia_Tel_Aviv[] = "Asia/Tel_Aviv";
34106 
34107 const AtcZoneInfo kAtcAllZoneAsia_Tel_Aviv = {
34108  kAtcZoneNameAsia_Tel_Aviv /*name*/,
34109  0x166d7c2c /*zone_id*/,
34110  &kAtcAllZoneContext /*zone_context*/,
34111  3 /*num_eras*/,
34112  kAtcZoneEraAsia_Jerusalem /*eras*/,
34113  &kAtcAllZoneAsia_Jerusalem /*target_info*/,
34114 };
34115 
34116 //---------------------------------------------------------------------------
34117 // Link name: Asia/Thimbu -> Asia/Thimphu
34118 //---------------------------------------------------------------------------
34119 
34120 static const char kAtcZoneNameAsia_Thimbu[] = "Asia/Thimbu";
34121 
34122 const AtcZoneInfo kAtcAllZoneAsia_Thimbu = {
34123  kAtcZoneNameAsia_Thimbu /*name*/,
34124  0xd226e31b /*zone_id*/,
34125  &kAtcAllZoneContext /*zone_context*/,
34126  3 /*num_eras*/,
34127  kAtcZoneEraAsia_Thimphu /*eras*/,
34128  &kAtcAllZoneAsia_Thimphu /*target_info*/,
34129 };
34130 
34131 //---------------------------------------------------------------------------
34132 // Link name: Asia/Ujung_Pandang -> Asia/Makassar
34133 //---------------------------------------------------------------------------
34134 
34135 static const char kAtcZoneNameAsia_Ujung_Pandang[] = "Asia/Ujung_Pandang";
34136 
34137 const AtcZoneInfo kAtcAllZoneAsia_Ujung_Pandang = {
34138  kAtcZoneNameAsia_Ujung_Pandang /*name*/,
34139  0x5d001eb3 /*zone_id*/,
34140  &kAtcAllZoneContext /*zone_context*/,
34141  5 /*num_eras*/,
34142  kAtcZoneEraAsia_Makassar /*eras*/,
34143  &kAtcAllZoneAsia_Makassar /*target_info*/,
34144 };
34145 
34146 //---------------------------------------------------------------------------
34147 // Link name: Asia/Ulan_Bator -> Asia/Ulaanbaatar
34148 //---------------------------------------------------------------------------
34149 
34150 static const char kAtcZoneNameAsia_Ulan_Bator[] = "Asia/Ulan_Bator";
34151 
34152 const AtcZoneInfo kAtcAllZoneAsia_Ulan_Bator = {
34153  kAtcZoneNameAsia_Ulan_Bator /*name*/,
34154  0x394db4d9 /*zone_id*/,
34155  &kAtcAllZoneContext /*zone_context*/,
34156  3 /*num_eras*/,
34157  kAtcZoneEraAsia_Ulaanbaatar /*eras*/,
34158  &kAtcAllZoneAsia_Ulaanbaatar /*target_info*/,
34159 };
34160 
34161 //---------------------------------------------------------------------------
34162 // Link name: Asia/Vientiane -> Asia/Bangkok
34163 //---------------------------------------------------------------------------
34164 
34165 static const char kAtcZoneNameAsia_Vientiane[] = "Asia/Vientiane";
34166 
34167 const AtcZoneInfo kAtcAllZoneAsia_Vientiane = {
34168  kAtcZoneNameAsia_Vientiane /*name*/,
34169  0x89d68d75 /*zone_id*/,
34170  &kAtcAllZoneContext /*zone_context*/,
34171  3 /*num_eras*/,
34172  kAtcZoneEraAsia_Bangkok /*eras*/,
34173  &kAtcAllZoneAsia_Bangkok /*target_info*/,
34174 };
34175 
34176 //---------------------------------------------------------------------------
34177 // Link name: Atlantic/Faeroe -> Atlantic/Faroe
34178 //---------------------------------------------------------------------------
34179 
34180 static const char kAtcZoneNameAtlantic_Faeroe[] = "Atlantic/Faeroe";
34181 
34182 const AtcZoneInfo kAtcAllZoneAtlantic_Faeroe = {
34183  kAtcZoneNameAtlantic_Faeroe /*name*/,
34184  0x031ec516 /*zone_id*/,
34185  &kAtcAllZoneContext /*zone_context*/,
34186  3 /*num_eras*/,
34187  kAtcZoneEraAtlantic_Faroe /*eras*/,
34188  &kAtcAllZoneAtlantic_Faroe /*target_info*/,
34189 };
34190 
34191 //---------------------------------------------------------------------------
34192 // Link name: Atlantic/Jan_Mayen -> Europe/Berlin
34193 //---------------------------------------------------------------------------
34194 
34195 static const char kAtcZoneNameAtlantic_Jan_Mayen[] = "Atlantic/Jan_Mayen";
34196 
34197 const AtcZoneInfo kAtcAllZoneAtlantic_Jan_Mayen = {
34198  kAtcZoneNameAtlantic_Jan_Mayen /*name*/,
34199  0x5a7535b6 /*zone_id*/,
34200  &kAtcAllZoneContext /*zone_context*/,
34201  5 /*num_eras*/,
34202  kAtcZoneEraEurope_Berlin /*eras*/,
34203  &kAtcAllZoneEurope_Berlin /*target_info*/,
34204 };
34205 
34206 //---------------------------------------------------------------------------
34207 // Link name: Atlantic/Reykjavik -> Africa/Abidjan
34208 //---------------------------------------------------------------------------
34209 
34210 static const char kAtcZoneNameAtlantic_Reykjavik[] = "Atlantic/Reykjavik";
34211 
34212 const AtcZoneInfo kAtcAllZoneAtlantic_Reykjavik = {
34213  kAtcZoneNameAtlantic_Reykjavik /*name*/,
34214  0x1c2b4f74 /*zone_id*/,
34215  &kAtcAllZoneContext /*zone_context*/,
34216  2 /*num_eras*/,
34217  kAtcZoneEraAfrica_Abidjan /*eras*/,
34218  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
34219 };
34220 
34221 //---------------------------------------------------------------------------
34222 // Link name: Atlantic/St_Helena -> Africa/Abidjan
34223 //---------------------------------------------------------------------------
34224 
34225 static const char kAtcZoneNameAtlantic_St_Helena[] = "Atlantic/St_Helena";
34226 
34227 const AtcZoneInfo kAtcAllZoneAtlantic_St_Helena = {
34228  kAtcZoneNameAtlantic_St_Helena /*name*/,
34229  0x451fc5f7 /*zone_id*/,
34230  &kAtcAllZoneContext /*zone_context*/,
34231  2 /*num_eras*/,
34232  kAtcZoneEraAfrica_Abidjan /*eras*/,
34233  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
34234 };
34235 
34236 //---------------------------------------------------------------------------
34237 // Link name: Australia/ACT -> Australia/Sydney
34238 //---------------------------------------------------------------------------
34239 
34240 static const char kAtcZoneNameAustralia_ACT[] = "Australia/ACT";
34241 
34242 const AtcZoneInfo kAtcAllZoneAustralia_ACT = {
34243  kAtcZoneNameAustralia_ACT /*name*/,
34244  0x8a970eb2 /*zone_id*/,
34245  &kAtcAllZoneContext /*zone_context*/,
34246  3 /*num_eras*/,
34247  kAtcZoneEraAustralia_Sydney /*eras*/,
34248  &kAtcAllZoneAustralia_Sydney /*target_info*/,
34249 };
34250 
34251 //---------------------------------------------------------------------------
34252 // Link name: Australia/Canberra -> Australia/Sydney
34253 //---------------------------------------------------------------------------
34254 
34255 static const char kAtcZoneNameAustralia_Canberra[] = "Australia/Canberra";
34256 
34257 const AtcZoneInfo kAtcAllZoneAustralia_Canberra = {
34258  kAtcZoneNameAustralia_Canberra /*name*/,
34259  0x2a09ae58 /*zone_id*/,
34260  &kAtcAllZoneContext /*zone_context*/,
34261  3 /*num_eras*/,
34262  kAtcZoneEraAustralia_Sydney /*eras*/,
34263  &kAtcAllZoneAustralia_Sydney /*target_info*/,
34264 };
34265 
34266 //---------------------------------------------------------------------------
34267 // Link name: Australia/Currie -> Australia/Hobart
34268 //---------------------------------------------------------------------------
34269 
34270 static const char kAtcZoneNameAustralia_Currie[] = "Australia/Currie";
34271 
34272 const AtcZoneInfo kAtcAllZoneAustralia_Currie = {
34273  kAtcZoneNameAustralia_Currie /*name*/,
34274  0x278b6a24 /*zone_id*/,
34275  &kAtcAllZoneContext /*zone_context*/,
34276  4 /*num_eras*/,
34277  kAtcZoneEraAustralia_Hobart /*eras*/,
34278  &kAtcAllZoneAustralia_Hobart /*target_info*/,
34279 };
34280 
34281 //---------------------------------------------------------------------------
34282 // Link name: Australia/LHI -> Australia/Lord_Howe
34283 //---------------------------------------------------------------------------
34284 
34285 static const char kAtcZoneNameAustralia_LHI[] = "Australia/LHI";
34286 
34287 const AtcZoneInfo kAtcAllZoneAustralia_LHI = {
34288  kAtcZoneNameAustralia_LHI /*name*/,
34289  0x8a973e17 /*zone_id*/,
34290  &kAtcAllZoneContext /*zone_context*/,
34291  4 /*num_eras*/,
34292  kAtcZoneEraAustralia_Lord_Howe /*eras*/,
34293  &kAtcAllZoneAustralia_Lord_Howe /*target_info*/,
34294 };
34295 
34296 //---------------------------------------------------------------------------
34297 // Link name: Australia/NSW -> Australia/Sydney
34298 //---------------------------------------------------------------------------
34299 
34300 static const char kAtcZoneNameAustralia_NSW[] = "Australia/NSW";
34301 
34302 const AtcZoneInfo kAtcAllZoneAustralia_NSW = {
34303  kAtcZoneNameAustralia_NSW /*name*/,
34304  0x8a974812 /*zone_id*/,
34305  &kAtcAllZoneContext /*zone_context*/,
34306  3 /*num_eras*/,
34307  kAtcZoneEraAustralia_Sydney /*eras*/,
34308  &kAtcAllZoneAustralia_Sydney /*target_info*/,
34309 };
34310 
34311 //---------------------------------------------------------------------------
34312 // Link name: Australia/North -> Australia/Darwin
34313 //---------------------------------------------------------------------------
34314 
34315 static const char kAtcZoneNameAustralia_North[] = "Australia/North";
34316 
34317 const AtcZoneInfo kAtcAllZoneAustralia_North = {
34318  kAtcZoneNameAustralia_North /*name*/,
34319  0x8d997165 /*zone_id*/,
34320  &kAtcAllZoneContext /*zone_context*/,
34321  3 /*num_eras*/,
34322  kAtcZoneEraAustralia_Darwin /*eras*/,
34323  &kAtcAllZoneAustralia_Darwin /*target_info*/,
34324 };
34325 
34326 //---------------------------------------------------------------------------
34327 // Link name: Australia/Queensland -> Australia/Brisbane
34328 //---------------------------------------------------------------------------
34329 
34330 static const char kAtcZoneNameAustralia_Queensland[] = "Australia/Queensland";
34331 
34332 const AtcZoneInfo kAtcAllZoneAustralia_Queensland = {
34333  kAtcZoneNameAustralia_Queensland /*name*/,
34334  0xd326ed0a /*zone_id*/,
34335  &kAtcAllZoneContext /*zone_context*/,
34336  3 /*num_eras*/,
34337  kAtcZoneEraAustralia_Brisbane /*eras*/,
34338  &kAtcAllZoneAustralia_Brisbane /*target_info*/,
34339 };
34340 
34341 //---------------------------------------------------------------------------
34342 // Link name: Australia/South -> Australia/Adelaide
34343 //---------------------------------------------------------------------------
34344 
34345 static const char kAtcZoneNameAustralia_South[] = "Australia/South";
34346 
34347 const AtcZoneInfo kAtcAllZoneAustralia_South = {
34348  kAtcZoneNameAustralia_South /*name*/,
34349  0x8df3f8ad /*zone_id*/,
34350  &kAtcAllZoneContext /*zone_context*/,
34351  4 /*num_eras*/,
34352  kAtcZoneEraAustralia_Adelaide /*eras*/,
34353  &kAtcAllZoneAustralia_Adelaide /*target_info*/,
34354 };
34355 
34356 //---------------------------------------------------------------------------
34357 // Link name: Australia/Tasmania -> Australia/Hobart
34358 //---------------------------------------------------------------------------
34359 
34360 static const char kAtcZoneNameAustralia_Tasmania[] = "Australia/Tasmania";
34361 
34362 const AtcZoneInfo kAtcAllZoneAustralia_Tasmania = {
34363  kAtcZoneNameAustralia_Tasmania /*name*/,
34364  0xe6d76648 /*zone_id*/,
34365  &kAtcAllZoneContext /*zone_context*/,
34366  4 /*num_eras*/,
34367  kAtcZoneEraAustralia_Hobart /*eras*/,
34368  &kAtcAllZoneAustralia_Hobart /*target_info*/,
34369 };
34370 
34371 //---------------------------------------------------------------------------
34372 // Link name: Australia/Victoria -> Australia/Melbourne
34373 //---------------------------------------------------------------------------
34374 
34375 static const char kAtcZoneNameAustralia_Victoria[] = "Australia/Victoria";
34376 
34377 const AtcZoneInfo kAtcAllZoneAustralia_Victoria = {
34378  kAtcZoneNameAustralia_Victoria /*name*/,
34379  0x0260d5db /*zone_id*/,
34380  &kAtcAllZoneContext /*zone_context*/,
34381  3 /*num_eras*/,
34382  kAtcZoneEraAustralia_Melbourne /*eras*/,
34383  &kAtcAllZoneAustralia_Melbourne /*target_info*/,
34384 };
34385 
34386 //---------------------------------------------------------------------------
34387 // Link name: Australia/West -> Australia/Perth
34388 //---------------------------------------------------------------------------
34389 
34390 static const char kAtcZoneNameAustralia_West[] = "Australia/West";
34391 
34392 const AtcZoneInfo kAtcAllZoneAustralia_West = {
34393  kAtcZoneNameAustralia_West /*name*/,
34394  0xdd858a5d /*zone_id*/,
34395  &kAtcAllZoneContext /*zone_context*/,
34396  3 /*num_eras*/,
34397  kAtcZoneEraAustralia_Perth /*eras*/,
34398  &kAtcAllZoneAustralia_Perth /*target_info*/,
34399 };
34400 
34401 //---------------------------------------------------------------------------
34402 // Link name: Australia/Yancowinna -> Australia/Broken_Hill
34403 //---------------------------------------------------------------------------
34404 
34405 static const char kAtcZoneNameAustralia_Yancowinna[] = "Australia/Yancowinna";
34406 
34407 const AtcZoneInfo kAtcAllZoneAustralia_Yancowinna = {
34408  kAtcZoneNameAustralia_Yancowinna /*name*/,
34409  0x90bac131 /*zone_id*/,
34410  &kAtcAllZoneContext /*zone_context*/,
34411  6 /*num_eras*/,
34412  kAtcZoneEraAustralia_Broken_Hill /*eras*/,
34413  &kAtcAllZoneAustralia_Broken_Hill /*target_info*/,
34414 };
34415 
34416 //---------------------------------------------------------------------------
34417 // Link name: Brazil/Acre -> America/Rio_Branco
34418 //---------------------------------------------------------------------------
34419 
34420 static const char kAtcZoneNameBrazil_Acre[] = "Brazil/Acre";
34421 
34422 const AtcZoneInfo kAtcAllZoneBrazil_Acre = {
34423  kAtcZoneNameBrazil_Acre /*name*/,
34424  0x66934f93 /*zone_id*/,
34425  &kAtcAllZoneContext /*zone_context*/,
34426  5 /*num_eras*/,
34427  kAtcZoneEraAmerica_Rio_Branco /*eras*/,
34428  &kAtcAllZoneAmerica_Rio_Branco /*target_info*/,
34429 };
34430 
34431 //---------------------------------------------------------------------------
34432 // Link name: Brazil/DeNoronha -> America/Noronha
34433 //---------------------------------------------------------------------------
34434 
34435 static const char kAtcZoneNameBrazil_DeNoronha[] = "Brazil/DeNoronha";
34436 
34437 const AtcZoneInfo kAtcAllZoneBrazil_DeNoronha = {
34438  kAtcZoneNameBrazil_DeNoronha /*name*/,
34439  0x9b4cb496 /*zone_id*/,
34440  &kAtcAllZoneContext /*zone_context*/,
34441  7 /*num_eras*/,
34442  kAtcZoneEraAmerica_Noronha /*eras*/,
34443  &kAtcAllZoneAmerica_Noronha /*target_info*/,
34444 };
34445 
34446 //---------------------------------------------------------------------------
34447 // Link name: Brazil/East -> America/Sao_Paulo
34448 //---------------------------------------------------------------------------
34449 
34450 static const char kAtcZoneNameBrazil_East[] = "Brazil/East";
34451 
34452 const AtcZoneInfo kAtcAllZoneBrazil_East = {
34453  kAtcZoneNameBrazil_East /*name*/,
34454  0x669578c5 /*zone_id*/,
34455  &kAtcAllZoneContext /*zone_context*/,
34456  4 /*num_eras*/,
34457  kAtcZoneEraAmerica_Sao_Paulo /*eras*/,
34458  &kAtcAllZoneAmerica_Sao_Paulo /*target_info*/,
34459 };
34460 
34461 //---------------------------------------------------------------------------
34462 // Link name: Brazil/West -> America/Manaus
34463 //---------------------------------------------------------------------------
34464 
34465 static const char kAtcZoneNameBrazil_West[] = "Brazil/West";
34466 
34467 const AtcZoneInfo kAtcAllZoneBrazil_West = {
34468  kAtcZoneNameBrazil_West /*name*/,
34469  0x669f689b /*zone_id*/,
34470  &kAtcAllZoneContext /*zone_context*/,
34471  5 /*num_eras*/,
34472  kAtcZoneEraAmerica_Manaus /*eras*/,
34473  &kAtcAllZoneAmerica_Manaus /*target_info*/,
34474 };
34475 
34476 //---------------------------------------------------------------------------
34477 // Link name: Canada/Atlantic -> America/Halifax
34478 //---------------------------------------------------------------------------
34479 
34480 static const char kAtcZoneNameCanada_Atlantic[] = "Canada/Atlantic";
34481 
34482 const AtcZoneInfo kAtcAllZoneCanada_Atlantic = {
34483  kAtcZoneNameCanada_Atlantic /*name*/,
34484  0x536b119c /*zone_id*/,
34485  &kAtcAllZoneContext /*zone_context*/,
34486  7 /*num_eras*/,
34487  kAtcZoneEraAmerica_Halifax /*eras*/,
34488  &kAtcAllZoneAmerica_Halifax /*target_info*/,
34489 };
34490 
34491 //---------------------------------------------------------------------------
34492 // Link name: Canada/Central -> America/Winnipeg
34493 //---------------------------------------------------------------------------
34494 
34495 static const char kAtcZoneNameCanada_Central[] = "Canada/Central";
34496 
34497 const AtcZoneInfo kAtcAllZoneCanada_Central = {
34498  kAtcZoneNameCanada_Central /*name*/,
34499  0x626710f5 /*zone_id*/,
34500  &kAtcAllZoneContext /*zone_context*/,
34501  3 /*num_eras*/,
34502  kAtcZoneEraAmerica_Winnipeg /*eras*/,
34503  &kAtcAllZoneAmerica_Winnipeg /*target_info*/,
34504 };
34505 
34506 //---------------------------------------------------------------------------
34507 // Link name: Canada/Eastern -> America/Toronto
34508 //---------------------------------------------------------------------------
34509 
34510 static const char kAtcZoneNameCanada_Eastern[] = "Canada/Eastern";
34511 
34512 const AtcZoneInfo kAtcAllZoneCanada_Eastern = {
34513  kAtcZoneNameCanada_Eastern /*name*/,
34514  0xf3612d5e /*zone_id*/,
34515  &kAtcAllZoneContext /*zone_context*/,
34516  6 /*num_eras*/,
34517  kAtcZoneEraAmerica_Toronto /*eras*/,
34518  &kAtcAllZoneAmerica_Toronto /*target_info*/,
34519 };
34520 
34521 //---------------------------------------------------------------------------
34522 // Link name: Canada/Mountain -> America/Edmonton
34523 //---------------------------------------------------------------------------
34524 
34525 static const char kAtcZoneNameCanada_Mountain[] = "Canada/Mountain";
34526 
34527 const AtcZoneInfo kAtcAllZoneCanada_Mountain = {
34528  kAtcZoneNameCanada_Mountain /*name*/,
34529  0xfb8a8217 /*zone_id*/,
34530  &kAtcAllZoneContext /*zone_context*/,
34531  3 /*num_eras*/,
34532  kAtcZoneEraAmerica_Edmonton /*eras*/,
34533  &kAtcAllZoneAmerica_Edmonton /*target_info*/,
34534 };
34535 
34536 //---------------------------------------------------------------------------
34537 // Link name: Canada/Newfoundland -> America/St_Johns
34538 //---------------------------------------------------------------------------
34539 
34540 static const char kAtcZoneNameCanada_Newfoundland[] = "Canada/Newfoundland";
34541 
34542 const AtcZoneInfo kAtcAllZoneCanada_Newfoundland = {
34543  kAtcZoneNameCanada_Newfoundland /*name*/,
34544  0xb396e991 /*zone_id*/,
34545  &kAtcAllZoneContext /*zone_context*/,
34546  8 /*num_eras*/,
34547  kAtcZoneEraAmerica_St_Johns /*eras*/,
34548  &kAtcAllZoneAmerica_St_Johns /*target_info*/,
34549 };
34550 
34551 //---------------------------------------------------------------------------
34552 // Link name: Canada/Pacific -> America/Vancouver
34553 //---------------------------------------------------------------------------
34554 
34555 static const char kAtcZoneNameCanada_Pacific[] = "Canada/Pacific";
34556 
34557 const AtcZoneInfo kAtcAllZoneCanada_Pacific = {
34558  kAtcZoneNameCanada_Pacific /*name*/,
34559  0x40fa3c7b /*zone_id*/,
34560  &kAtcAllZoneContext /*zone_context*/,
34561  3 /*num_eras*/,
34562  kAtcZoneEraAmerica_Vancouver /*eras*/,
34563  &kAtcAllZoneAmerica_Vancouver /*target_info*/,
34564 };
34565 
34566 //---------------------------------------------------------------------------
34567 // Link name: Canada/Saskatchewan -> America/Regina
34568 //---------------------------------------------------------------------------
34569 
34570 static const char kAtcZoneNameCanada_Saskatchewan[] = "Canada/Saskatchewan";
34571 
34572 const AtcZoneInfo kAtcAllZoneCanada_Saskatchewan = {
34573  kAtcZoneNameCanada_Saskatchewan /*name*/,
34574  0x77311f49 /*zone_id*/,
34575  &kAtcAllZoneContext /*zone_context*/,
34576  3 /*num_eras*/,
34577  kAtcZoneEraAmerica_Regina /*eras*/,
34578  &kAtcAllZoneAmerica_Regina /*target_info*/,
34579 };
34580 
34581 //---------------------------------------------------------------------------
34582 // Link name: Canada/Yukon -> America/Whitehorse
34583 //---------------------------------------------------------------------------
34584 
34585 static const char kAtcZoneNameCanada_Yukon[] = "Canada/Yukon";
34586 
34587 const AtcZoneInfo kAtcAllZoneCanada_Yukon = {
34588  kAtcZoneNameCanada_Yukon /*name*/,
34589  0x78dd35c2 /*zone_id*/,
34590  &kAtcAllZoneContext /*zone_context*/,
34591  6 /*num_eras*/,
34592  kAtcZoneEraAmerica_Whitehorse /*eras*/,
34593  &kAtcAllZoneAmerica_Whitehorse /*target_info*/,
34594 };
34595 
34596 //---------------------------------------------------------------------------
34597 // Link name: Chile/Continental -> America/Santiago
34598 //---------------------------------------------------------------------------
34599 
34600 static const char kAtcZoneNameChile_Continental[] = "Chile/Continental";
34601 
34602 const AtcZoneInfo kAtcAllZoneChile_Continental = {
34603  kAtcZoneNameChile_Continental /*name*/,
34604  0x7e2bdb18 /*zone_id*/,
34605  &kAtcAllZoneContext /*zone_context*/,
34606  14 /*num_eras*/,
34607  kAtcZoneEraAmerica_Santiago /*eras*/,
34608  &kAtcAllZoneAmerica_Santiago /*target_info*/,
34609 };
34610 
34611 //---------------------------------------------------------------------------
34612 // Link name: Chile/EasterIsland -> Pacific/Easter
34613 //---------------------------------------------------------------------------
34614 
34615 static const char kAtcZoneNameChile_EasterIsland[] = "Chile/EasterIsland";
34616 
34617 const AtcZoneInfo kAtcAllZoneChile_EasterIsland = {
34618  kAtcZoneNameChile_EasterIsland /*name*/,
34619  0xb0982af8 /*zone_id*/,
34620  &kAtcAllZoneContext /*zone_context*/,
34621  4 /*num_eras*/,
34622  kAtcZoneEraPacific_Easter /*eras*/,
34623  &kAtcAllZonePacific_Easter /*target_info*/,
34624 };
34625 
34626 //---------------------------------------------------------------------------
34627 // Link name: Cuba -> America/Havana
34628 //---------------------------------------------------------------------------
34629 
34630 static const char kAtcZoneNameCuba[] = "Cuba";
34631 
34632 const AtcZoneInfo kAtcAllZoneCuba = {
34633  kAtcZoneNameCuba /*name*/,
34634  0x7c83cba0 /*zone_id*/,
34635  &kAtcAllZoneContext /*zone_context*/,
34636  3 /*num_eras*/,
34637  kAtcZoneEraAmerica_Havana /*eras*/,
34638  &kAtcAllZoneAmerica_Havana /*target_info*/,
34639 };
34640 
34641 //---------------------------------------------------------------------------
34642 // Link name: Egypt -> Africa/Cairo
34643 //---------------------------------------------------------------------------
34644 
34645 static const char kAtcZoneNameEgypt[] = "Egypt";
34646 
34647 const AtcZoneInfo kAtcAllZoneEgypt = {
34648  kAtcZoneNameEgypt /*name*/,
34649  0x0d1a278e /*zone_id*/,
34650  &kAtcAllZoneContext /*zone_context*/,
34651  2 /*num_eras*/,
34652  kAtcZoneEraAfrica_Cairo /*eras*/,
34653  &kAtcAllZoneAfrica_Cairo /*target_info*/,
34654 };
34655 
34656 //---------------------------------------------------------------------------
34657 // Link name: Eire -> Europe/Dublin
34658 //---------------------------------------------------------------------------
34659 
34660 static const char kAtcZoneNameEire[] = "Eire";
34661 
34662 const AtcZoneInfo kAtcAllZoneEire = {
34663  kAtcZoneNameEire /*name*/,
34664  0x7c84b36a /*zone_id*/,
34665  &kAtcAllZoneContext /*zone_context*/,
34666  11 /*num_eras*/,
34667  kAtcZoneEraEurope_Dublin /*eras*/,
34668  &kAtcAllZoneEurope_Dublin /*target_info*/,
34669 };
34670 
34671 //---------------------------------------------------------------------------
34672 // Link name: Etc/GMT+0 -> Etc/GMT
34673 //---------------------------------------------------------------------------
34674 
34675 static const char kAtcZoneNameEtc_GMT_PLUS_0[] = "Etc/GMT+0";
34676 
34677 const AtcZoneInfo kAtcAllZoneEtc_GMT_PLUS_0 = {
34678  kAtcZoneNameEtc_GMT_PLUS_0 /*name*/,
34679  0x9d13da13 /*zone_id*/,
34680  &kAtcAllZoneContext /*zone_context*/,
34681  1 /*num_eras*/,
34682  kAtcZoneEraEtc_GMT /*eras*/,
34683  &kAtcAllZoneEtc_GMT /*target_info*/,
34684 };
34685 
34686 //---------------------------------------------------------------------------
34687 // Link name: Etc/GMT-0 -> Etc/GMT
34688 //---------------------------------------------------------------------------
34689 
34690 static const char kAtcZoneNameEtc_GMT_0[] = "Etc/GMT-0";
34691 
34692 const AtcZoneInfo kAtcAllZoneEtc_GMT_0 = {
34693  kAtcZoneNameEtc_GMT_0 /*name*/,
34694  0x9d13da55 /*zone_id*/,
34695  &kAtcAllZoneContext /*zone_context*/,
34696  1 /*num_eras*/,
34697  kAtcZoneEraEtc_GMT /*eras*/,
34698  &kAtcAllZoneEtc_GMT /*target_info*/,
34699 };
34700 
34701 //---------------------------------------------------------------------------
34702 // Link name: Etc/GMT0 -> Etc/GMT
34703 //---------------------------------------------------------------------------
34704 
34705 static const char kAtcZoneNameEtc_GMT0[] = "Etc/GMT0";
34706 
34707 const AtcZoneInfo kAtcAllZoneEtc_GMT0 = {
34708  kAtcZoneNameEtc_GMT0 /*name*/,
34709  0xf53ea988 /*zone_id*/,
34710  &kAtcAllZoneContext /*zone_context*/,
34711  1 /*num_eras*/,
34712  kAtcZoneEraEtc_GMT /*eras*/,
34713  &kAtcAllZoneEtc_GMT /*target_info*/,
34714 };
34715 
34716 //---------------------------------------------------------------------------
34717 // Link name: Etc/Greenwich -> Etc/GMT
34718 //---------------------------------------------------------------------------
34719 
34720 static const char kAtcZoneNameEtc_Greenwich[] = "Etc/Greenwich";
34721 
34722 const AtcZoneInfo kAtcAllZoneEtc_Greenwich = {
34723  kAtcZoneNameEtc_Greenwich /*name*/,
34724  0x26daa98c /*zone_id*/,
34725  &kAtcAllZoneContext /*zone_context*/,
34726  1 /*num_eras*/,
34727  kAtcZoneEraEtc_GMT /*eras*/,
34728  &kAtcAllZoneEtc_GMT /*target_info*/,
34729 };
34730 
34731 //---------------------------------------------------------------------------
34732 // Link name: Etc/UCT -> Etc/UTC
34733 //---------------------------------------------------------------------------
34734 
34735 static const char kAtcZoneNameEtc_UCT[] = "Etc/UCT";
34736 
34737 const AtcZoneInfo kAtcAllZoneEtc_UCT = {
34738  kAtcZoneNameEtc_UCT /*name*/,
34739  0xd8e3189c /*zone_id*/,
34740  &kAtcAllZoneContext /*zone_context*/,
34741  1 /*num_eras*/,
34742  kAtcZoneEraEtc_UTC /*eras*/,
34743  &kAtcAllZoneEtc_UTC /*target_info*/,
34744 };
34745 
34746 //---------------------------------------------------------------------------
34747 // Link name: Etc/Universal -> Etc/UTC
34748 //---------------------------------------------------------------------------
34749 
34750 static const char kAtcZoneNameEtc_Universal[] = "Etc/Universal";
34751 
34752 const AtcZoneInfo kAtcAllZoneEtc_Universal = {
34753  kAtcZoneNameEtc_Universal /*name*/,
34754  0x2f8cb9a9 /*zone_id*/,
34755  &kAtcAllZoneContext /*zone_context*/,
34756  1 /*num_eras*/,
34757  kAtcZoneEraEtc_UTC /*eras*/,
34758  &kAtcAllZoneEtc_UTC /*target_info*/,
34759 };
34760 
34761 //---------------------------------------------------------------------------
34762 // Link name: Etc/Zulu -> Etc/UTC
34763 //---------------------------------------------------------------------------
34764 
34765 static const char kAtcZoneNameEtc_Zulu[] = "Etc/Zulu";
34766 
34767 const AtcZoneInfo kAtcAllZoneEtc_Zulu = {
34768  kAtcZoneNameEtc_Zulu /*name*/,
34769  0xf549c240 /*zone_id*/,
34770  &kAtcAllZoneContext /*zone_context*/,
34771  1 /*num_eras*/,
34772  kAtcZoneEraEtc_UTC /*eras*/,
34773  &kAtcAllZoneEtc_UTC /*target_info*/,
34774 };
34775 
34776 //---------------------------------------------------------------------------
34777 // Link name: Europe/Amsterdam -> Europe/Brussels
34778 //---------------------------------------------------------------------------
34779 
34780 static const char kAtcZoneNameEurope_Amsterdam[] = "Europe/Amsterdam";
34781 
34782 const AtcZoneInfo kAtcAllZoneEurope_Amsterdam = {
34783  kAtcZoneNameEurope_Amsterdam /*name*/,
34784  0x109395c2 /*zone_id*/,
34785  &kAtcAllZoneContext /*zone_context*/,
34786  9 /*num_eras*/,
34787  kAtcZoneEraEurope_Brussels /*eras*/,
34788  &kAtcAllZoneEurope_Brussels /*target_info*/,
34789 };
34790 
34791 //---------------------------------------------------------------------------
34792 // Link name: Europe/Belfast -> Europe/London
34793 //---------------------------------------------------------------------------
34794 
34795 static const char kAtcZoneNameEurope_Belfast[] = "Europe/Belfast";
34796 
34797 const AtcZoneInfo kAtcAllZoneEurope_Belfast = {
34798  kAtcZoneNameEurope_Belfast /*name*/,
34799  0xd07dd1e5 /*zone_id*/,
34800  &kAtcAllZoneContext /*zone_context*/,
34801  5 /*num_eras*/,
34802  kAtcZoneEraEurope_London /*eras*/,
34803  &kAtcAllZoneEurope_London /*target_info*/,
34804 };
34805 
34806 //---------------------------------------------------------------------------
34807 // Link name: Europe/Bratislava -> Europe/Prague
34808 //---------------------------------------------------------------------------
34809 
34810 static const char kAtcZoneNameEurope_Bratislava[] = "Europe/Bratislava";
34811 
34812 const AtcZoneInfo kAtcAllZoneEurope_Bratislava = {
34813  kAtcZoneNameEurope_Bratislava /*name*/,
34814  0xda493bed /*zone_id*/,
34815  &kAtcAllZoneContext /*zone_context*/,
34816  7 /*num_eras*/,
34817  kAtcZoneEraEurope_Prague /*eras*/,
34818  &kAtcAllZoneEurope_Prague /*target_info*/,
34819 };
34820 
34821 //---------------------------------------------------------------------------
34822 // Link name: Europe/Busingen -> Europe/Zurich
34823 //---------------------------------------------------------------------------
34824 
34825 static const char kAtcZoneNameEurope_Busingen[] = "Europe/Busingen";
34826 
34827 const AtcZoneInfo kAtcAllZoneEurope_Busingen = {
34828  kAtcZoneNameEurope_Busingen /*name*/,
34829  0xc06d2cdf /*zone_id*/,
34830  &kAtcAllZoneContext /*zone_context*/,
34831  4 /*num_eras*/,
34832  kAtcZoneEraEurope_Zurich /*eras*/,
34833  &kAtcAllZoneEurope_Zurich /*target_info*/,
34834 };
34835 
34836 //---------------------------------------------------------------------------
34837 // Link name: Europe/Copenhagen -> Europe/Berlin
34838 //---------------------------------------------------------------------------
34839 
34840 static const char kAtcZoneNameEurope_Copenhagen[] = "Europe/Copenhagen";
34841 
34842 const AtcZoneInfo kAtcAllZoneEurope_Copenhagen = {
34843  kAtcZoneNameEurope_Copenhagen /*name*/,
34844  0xe0ed30bc /*zone_id*/,
34845  &kAtcAllZoneContext /*zone_context*/,
34846  5 /*num_eras*/,
34847  kAtcZoneEraEurope_Berlin /*eras*/,
34848  &kAtcAllZoneEurope_Berlin /*target_info*/,
34849 };
34850 
34851 //---------------------------------------------------------------------------
34852 // Link name: Europe/Guernsey -> Europe/London
34853 //---------------------------------------------------------------------------
34854 
34855 static const char kAtcZoneNameEurope_Guernsey[] = "Europe/Guernsey";
34856 
34857 const AtcZoneInfo kAtcAllZoneEurope_Guernsey = {
34858  kAtcZoneNameEurope_Guernsey /*name*/,
34859  0x3db12c16 /*zone_id*/,
34860  &kAtcAllZoneContext /*zone_context*/,
34861  5 /*num_eras*/,
34862  kAtcZoneEraEurope_London /*eras*/,
34863  &kAtcAllZoneEurope_London /*target_info*/,
34864 };
34865 
34866 //---------------------------------------------------------------------------
34867 // Link name: Europe/Isle_of_Man -> Europe/London
34868 //---------------------------------------------------------------------------
34869 
34870 static const char kAtcZoneNameEurope_Isle_of_Man[] = "Europe/Isle_of_Man";
34871 
34872 const AtcZoneInfo kAtcAllZoneEurope_Isle_of_Man = {
34873  kAtcZoneNameEurope_Isle_of_Man /*name*/,
34874  0xeaf84580 /*zone_id*/,
34875  &kAtcAllZoneContext /*zone_context*/,
34876  5 /*num_eras*/,
34877  kAtcZoneEraEurope_London /*eras*/,
34878  &kAtcAllZoneEurope_London /*target_info*/,
34879 };
34880 
34881 //---------------------------------------------------------------------------
34882 // Link name: Europe/Jersey -> Europe/London
34883 //---------------------------------------------------------------------------
34884 
34885 static const char kAtcZoneNameEurope_Jersey[] = "Europe/Jersey";
34886 
34887 const AtcZoneInfo kAtcAllZoneEurope_Jersey = {
34888  kAtcZoneNameEurope_Jersey /*name*/,
34889  0x570dae76 /*zone_id*/,
34890  &kAtcAllZoneContext /*zone_context*/,
34891  5 /*num_eras*/,
34892  kAtcZoneEraEurope_London /*eras*/,
34893  &kAtcAllZoneEurope_London /*target_info*/,
34894 };
34895 
34896 //---------------------------------------------------------------------------
34897 // Link name: Europe/Kiev -> Europe/Kyiv
34898 //---------------------------------------------------------------------------
34899 
34900 static const char kAtcZoneNameEurope_Kiev[] = "Europe/Kiev";
34901 
34902 const AtcZoneInfo kAtcAllZoneEurope_Kiev = {
34903  kAtcZoneNameEurope_Kiev /*name*/,
34904  0xa2c19eb3 /*zone_id*/,
34905  &kAtcAllZoneContext /*zone_context*/,
34906  9 /*num_eras*/,
34907  kAtcZoneEraEurope_Kyiv /*eras*/,
34908  &kAtcAllZoneEurope_Kyiv /*target_info*/,
34909 };
34910 
34911 //---------------------------------------------------------------------------
34912 // Link name: Europe/Ljubljana -> Europe/Belgrade
34913 //---------------------------------------------------------------------------
34914 
34915 static const char kAtcZoneNameEurope_Ljubljana[] = "Europe/Ljubljana";
34916 
34917 const AtcZoneInfo kAtcAllZoneEurope_Ljubljana = {
34918  kAtcZoneNameEurope_Ljubljana /*name*/,
34919  0xbd98cdb7 /*zone_id*/,
34920  &kAtcAllZoneContext /*zone_context*/,
34921  7 /*num_eras*/,
34922  kAtcZoneEraEurope_Belgrade /*eras*/,
34923  &kAtcAllZoneEurope_Belgrade /*target_info*/,
34924 };
34925 
34926 //---------------------------------------------------------------------------
34927 // Link name: Europe/Luxembourg -> Europe/Brussels
34928 //---------------------------------------------------------------------------
34929 
34930 static const char kAtcZoneNameEurope_Luxembourg[] = "Europe/Luxembourg";
34931 
34932 const AtcZoneInfo kAtcAllZoneEurope_Luxembourg = {
34933  kAtcZoneNameEurope_Luxembourg /*name*/,
34934  0x1f8bc6ce /*zone_id*/,
34935  &kAtcAllZoneContext /*zone_context*/,
34936  9 /*num_eras*/,
34937  kAtcZoneEraEurope_Brussels /*eras*/,
34938  &kAtcAllZoneEurope_Brussels /*target_info*/,
34939 };
34940 
34941 //---------------------------------------------------------------------------
34942 // Link name: Europe/Mariehamn -> Europe/Helsinki
34943 //---------------------------------------------------------------------------
34944 
34945 static const char kAtcZoneNameEurope_Mariehamn[] = "Europe/Mariehamn";
34946 
34947 const AtcZoneInfo kAtcAllZoneEurope_Mariehamn = {
34948  kAtcZoneNameEurope_Mariehamn /*name*/,
34949  0x0caa6496 /*zone_id*/,
34950  &kAtcAllZoneContext /*zone_context*/,
34951  4 /*num_eras*/,
34952  kAtcZoneEraEurope_Helsinki /*eras*/,
34953  &kAtcAllZoneEurope_Helsinki /*target_info*/,
34954 };
34955 
34956 //---------------------------------------------------------------------------
34957 // Link name: Europe/Monaco -> Europe/Paris
34958 //---------------------------------------------------------------------------
34959 
34960 static const char kAtcZoneNameEurope_Monaco[] = "Europe/Monaco";
34961 
34962 const AtcZoneInfo kAtcAllZoneEurope_Monaco = {
34963  kAtcZoneNameEurope_Monaco /*name*/,
34964  0x5ebf9f01 /*zone_id*/,
34965  &kAtcAllZoneContext /*zone_context*/,
34966  7 /*num_eras*/,
34967  kAtcZoneEraEurope_Paris /*eras*/,
34968  &kAtcAllZoneEurope_Paris /*target_info*/,
34969 };
34970 
34971 //---------------------------------------------------------------------------
34972 // Link name: Europe/Nicosia -> Asia/Nicosia
34973 //---------------------------------------------------------------------------
34974 
34975 static const char kAtcZoneNameEurope_Nicosia[] = "Europe/Nicosia";
34976 
34977 const AtcZoneInfo kAtcAllZoneEurope_Nicosia = {
34978  kAtcZoneNameEurope_Nicosia /*name*/,
34979  0x74efab8a /*zone_id*/,
34980  &kAtcAllZoneContext /*zone_context*/,
34981  3 /*num_eras*/,
34982  kAtcZoneEraAsia_Nicosia /*eras*/,
34983  &kAtcAllZoneAsia_Nicosia /*target_info*/,
34984 };
34985 
34986 //---------------------------------------------------------------------------
34987 // Link name: Europe/Oslo -> Europe/Berlin
34988 //---------------------------------------------------------------------------
34989 
34990 static const char kAtcZoneNameEurope_Oslo[] = "Europe/Oslo";
34991 
34992 const AtcZoneInfo kAtcAllZoneEurope_Oslo = {
34993  kAtcZoneNameEurope_Oslo /*name*/,
34994  0xa2c3fba1 /*zone_id*/,
34995  &kAtcAllZoneContext /*zone_context*/,
34996  5 /*num_eras*/,
34997  kAtcZoneEraEurope_Berlin /*eras*/,
34998  &kAtcAllZoneEurope_Berlin /*target_info*/,
34999 };
35000 
35001 //---------------------------------------------------------------------------
35002 // Link name: Europe/Podgorica -> Europe/Belgrade
35003 //---------------------------------------------------------------------------
35004 
35005 static const char kAtcZoneNameEurope_Podgorica[] = "Europe/Podgorica";
35006 
35007 const AtcZoneInfo kAtcAllZoneEurope_Podgorica = {
35008  kAtcZoneNameEurope_Podgorica /*name*/,
35009  0x1c1a499c /*zone_id*/,
35010  &kAtcAllZoneContext /*zone_context*/,
35011  7 /*num_eras*/,
35012  kAtcZoneEraEurope_Belgrade /*eras*/,
35013  &kAtcAllZoneEurope_Belgrade /*target_info*/,
35014 };
35015 
35016 //---------------------------------------------------------------------------
35017 // Link name: Europe/San_Marino -> Europe/Rome
35018 //---------------------------------------------------------------------------
35019 
35020 static const char kAtcZoneNameEurope_San_Marino[] = "Europe/San_Marino";
35021 
35022 const AtcZoneInfo kAtcAllZoneEurope_San_Marino = {
35023  kAtcZoneNameEurope_San_Marino /*name*/,
35024  0xcef7724b /*zone_id*/,
35025  &kAtcAllZoneContext /*zone_context*/,
35026  6 /*num_eras*/,
35027  kAtcZoneEraEurope_Rome /*eras*/,
35028  &kAtcAllZoneEurope_Rome /*target_info*/,
35029 };
35030 
35031 //---------------------------------------------------------------------------
35032 // Link name: Europe/Sarajevo -> Europe/Belgrade
35033 //---------------------------------------------------------------------------
35034 
35035 static const char kAtcZoneNameEurope_Sarajevo[] = "Europe/Sarajevo";
35036 
35037 const AtcZoneInfo kAtcAllZoneEurope_Sarajevo = {
35038  kAtcZoneNameEurope_Sarajevo /*name*/,
35039  0x6a576c3f /*zone_id*/,
35040  &kAtcAllZoneContext /*zone_context*/,
35041  7 /*num_eras*/,
35042  kAtcZoneEraEurope_Belgrade /*eras*/,
35043  &kAtcAllZoneEurope_Belgrade /*target_info*/,
35044 };
35045 
35046 //---------------------------------------------------------------------------
35047 // Link name: Europe/Skopje -> Europe/Belgrade
35048 //---------------------------------------------------------------------------
35049 
35050 static const char kAtcZoneNameEurope_Skopje[] = "Europe/Skopje";
35051 
35052 const AtcZoneInfo kAtcAllZoneEurope_Skopje = {
35053  kAtcZoneNameEurope_Skopje /*name*/,
35054  0x6c76fdd0 /*zone_id*/,
35055  &kAtcAllZoneContext /*zone_context*/,
35056  7 /*num_eras*/,
35057  kAtcZoneEraEurope_Belgrade /*eras*/,
35058  &kAtcAllZoneEurope_Belgrade /*target_info*/,
35059 };
35060 
35061 //---------------------------------------------------------------------------
35062 // Link name: Europe/Stockholm -> Europe/Berlin
35063 //---------------------------------------------------------------------------
35064 
35065 static const char kAtcZoneNameEurope_Stockholm[] = "Europe/Stockholm";
35066 
35067 const AtcZoneInfo kAtcAllZoneEurope_Stockholm = {
35068  kAtcZoneNameEurope_Stockholm /*name*/,
35069  0x5bf6fbb8 /*zone_id*/,
35070  &kAtcAllZoneContext /*zone_context*/,
35071  5 /*num_eras*/,
35072  kAtcZoneEraEurope_Berlin /*eras*/,
35073  &kAtcAllZoneEurope_Berlin /*target_info*/,
35074 };
35075 
35076 //---------------------------------------------------------------------------
35077 // Link name: Europe/Tiraspol -> Europe/Chisinau
35078 //---------------------------------------------------------------------------
35079 
35080 static const char kAtcZoneNameEurope_Tiraspol[] = "Europe/Tiraspol";
35081 
35082 const AtcZoneInfo kAtcAllZoneEurope_Tiraspol = {
35083  kAtcZoneNameEurope_Tiraspol /*name*/,
35084  0xbe704472 /*zone_id*/,
35085  &kAtcAllZoneContext /*zone_context*/,
35086  10 /*num_eras*/,
35087  kAtcZoneEraEurope_Chisinau /*eras*/,
35088  &kAtcAllZoneEurope_Chisinau /*target_info*/,
35089 };
35090 
35091 //---------------------------------------------------------------------------
35092 // Link name: Europe/Uzhgorod -> Europe/Kyiv
35093 //---------------------------------------------------------------------------
35094 
35095 static const char kAtcZoneNameEurope_Uzhgorod[] = "Europe/Uzhgorod";
35096 
35097 const AtcZoneInfo kAtcAllZoneEurope_Uzhgorod = {
35098  kAtcZoneNameEurope_Uzhgorod /*name*/,
35099  0xb066f5d6 /*zone_id*/,
35100  &kAtcAllZoneContext /*zone_context*/,
35101  9 /*num_eras*/,
35102  kAtcZoneEraEurope_Kyiv /*eras*/,
35103  &kAtcAllZoneEurope_Kyiv /*target_info*/,
35104 };
35105 
35106 //---------------------------------------------------------------------------
35107 // Link name: Europe/Vaduz -> Europe/Zurich
35108 //---------------------------------------------------------------------------
35109 
35110 static const char kAtcZoneNameEurope_Vaduz[] = "Europe/Vaduz";
35111 
35112 const AtcZoneInfo kAtcAllZoneEurope_Vaduz = {
35113  kAtcZoneNameEurope_Vaduz /*name*/,
35114  0xfbb81bae /*zone_id*/,
35115  &kAtcAllZoneContext /*zone_context*/,
35116  4 /*num_eras*/,
35117  kAtcZoneEraEurope_Zurich /*eras*/,
35118  &kAtcAllZoneEurope_Zurich /*target_info*/,
35119 };
35120 
35121 //---------------------------------------------------------------------------
35122 // Link name: Europe/Vatican -> Europe/Rome
35123 //---------------------------------------------------------------------------
35124 
35125 static const char kAtcZoneNameEurope_Vatican[] = "Europe/Vatican";
35126 
35127 const AtcZoneInfo kAtcAllZoneEurope_Vatican = {
35128  kAtcZoneNameEurope_Vatican /*name*/,
35129  0xcb485dca /*zone_id*/,
35130  &kAtcAllZoneContext /*zone_context*/,
35131  6 /*num_eras*/,
35132  kAtcZoneEraEurope_Rome /*eras*/,
35133  &kAtcAllZoneEurope_Rome /*target_info*/,
35134 };
35135 
35136 //---------------------------------------------------------------------------
35137 // Link name: Europe/Zagreb -> Europe/Belgrade
35138 //---------------------------------------------------------------------------
35139 
35140 static const char kAtcZoneNameEurope_Zagreb[] = "Europe/Zagreb";
35141 
35142 const AtcZoneInfo kAtcAllZoneEurope_Zagreb = {
35143  kAtcZoneNameEurope_Zagreb /*name*/,
35144  0x7c11c9ff /*zone_id*/,
35145  &kAtcAllZoneContext /*zone_context*/,
35146  7 /*num_eras*/,
35147  kAtcZoneEraEurope_Belgrade /*eras*/,
35148  &kAtcAllZoneEurope_Belgrade /*target_info*/,
35149 };
35150 
35151 //---------------------------------------------------------------------------
35152 // Link name: Europe/Zaporozhye -> Europe/Kyiv
35153 //---------------------------------------------------------------------------
35154 
35155 static const char kAtcZoneNameEurope_Zaporozhye[] = "Europe/Zaporozhye";
35156 
35157 const AtcZoneInfo kAtcAllZoneEurope_Zaporozhye = {
35158  kAtcZoneNameEurope_Zaporozhye /*name*/,
35159  0xeab9767f /*zone_id*/,
35160  &kAtcAllZoneContext /*zone_context*/,
35161  9 /*num_eras*/,
35162  kAtcZoneEraEurope_Kyiv /*eras*/,
35163  &kAtcAllZoneEurope_Kyiv /*target_info*/,
35164 };
35165 
35166 //---------------------------------------------------------------------------
35167 // Link name: GB -> Europe/London
35168 //---------------------------------------------------------------------------
35169 
35170 static const char kAtcZoneNameGB[] = "GB";
35171 
35172 const AtcZoneInfo kAtcAllZoneGB = {
35173  kAtcZoneNameGB /*name*/,
35174  0x005973ae /*zone_id*/,
35175  &kAtcAllZoneContext /*zone_context*/,
35176  5 /*num_eras*/,
35177  kAtcZoneEraEurope_London /*eras*/,
35178  &kAtcAllZoneEurope_London /*target_info*/,
35179 };
35180 
35181 //---------------------------------------------------------------------------
35182 // Link name: GB-Eire -> Europe/London
35183 //---------------------------------------------------------------------------
35184 
35185 static const char kAtcZoneNameGB_Eire[] = "GB-Eire";
35186 
35187 const AtcZoneInfo kAtcAllZoneGB_Eire = {
35188  kAtcZoneNameGB_Eire /*name*/,
35189  0xfa70e300 /*zone_id*/,
35190  &kAtcAllZoneContext /*zone_context*/,
35191  5 /*num_eras*/,
35192  kAtcZoneEraEurope_London /*eras*/,
35193  &kAtcAllZoneEurope_London /*target_info*/,
35194 };
35195 
35196 //---------------------------------------------------------------------------
35197 // Link name: GMT -> Etc/GMT
35198 //---------------------------------------------------------------------------
35199 
35200 static const char kAtcZoneNameGMT[] = "GMT";
35201 
35202 const AtcZoneInfo kAtcAllZoneGMT = {
35203  kAtcZoneNameGMT /*name*/,
35204  0x0b87eb2d /*zone_id*/,
35205  &kAtcAllZoneContext /*zone_context*/,
35206  1 /*num_eras*/,
35207  kAtcZoneEraEtc_GMT /*eras*/,
35208  &kAtcAllZoneEtc_GMT /*target_info*/,
35209 };
35210 
35211 //---------------------------------------------------------------------------
35212 // Link name: GMT+0 -> Etc/GMT
35213 //---------------------------------------------------------------------------
35214 
35215 static const char kAtcZoneNameGMT_PLUS_0[] = "GMT+0";
35216 
35217 const AtcZoneInfo kAtcAllZoneGMT_PLUS_0 = {
35218  kAtcZoneNameGMT_PLUS_0 /*name*/,
35219  0x0d2f7028 /*zone_id*/,
35220  &kAtcAllZoneContext /*zone_context*/,
35221  1 /*num_eras*/,
35222  kAtcZoneEraEtc_GMT /*eras*/,
35223  &kAtcAllZoneEtc_GMT /*target_info*/,
35224 };
35225 
35226 //---------------------------------------------------------------------------
35227 // Link name: GMT-0 -> Etc/GMT
35228 //---------------------------------------------------------------------------
35229 
35230 static const char kAtcZoneNameGMT_0[] = "GMT-0";
35231 
35232 const AtcZoneInfo kAtcAllZoneGMT_0 = {
35233  kAtcZoneNameGMT_0 /*name*/,
35234  0x0d2f706a /*zone_id*/,
35235  &kAtcAllZoneContext /*zone_context*/,
35236  1 /*num_eras*/,
35237  kAtcZoneEraEtc_GMT /*eras*/,
35238  &kAtcAllZoneEtc_GMT /*target_info*/,
35239 };
35240 
35241 //---------------------------------------------------------------------------
35242 // Link name: GMT0 -> Etc/GMT
35243 //---------------------------------------------------------------------------
35244 
35245 static const char kAtcZoneNameGMT0[] = "GMT0";
35246 
35247 const AtcZoneInfo kAtcAllZoneGMT0 = {
35248  kAtcZoneNameGMT0 /*name*/,
35249  0x7c8550fd /*zone_id*/,
35250  &kAtcAllZoneContext /*zone_context*/,
35251  1 /*num_eras*/,
35252  kAtcZoneEraEtc_GMT /*eras*/,
35253  &kAtcAllZoneEtc_GMT /*target_info*/,
35254 };
35255 
35256 //---------------------------------------------------------------------------
35257 // Link name: Greenwich -> Etc/GMT
35258 //---------------------------------------------------------------------------
35259 
35260 static const char kAtcZoneNameGreenwich[] = "Greenwich";
35261 
35262 const AtcZoneInfo kAtcAllZoneGreenwich = {
35263  kAtcZoneNameGreenwich /*name*/,
35264  0xc84d4221 /*zone_id*/,
35265  &kAtcAllZoneContext /*zone_context*/,
35266  1 /*num_eras*/,
35267  kAtcZoneEraEtc_GMT /*eras*/,
35268  &kAtcAllZoneEtc_GMT /*target_info*/,
35269 };
35270 
35271 //---------------------------------------------------------------------------
35272 // Link name: Hongkong -> Asia/Hong_Kong
35273 //---------------------------------------------------------------------------
35274 
35275 static const char kAtcZoneNameHongkong[] = "Hongkong";
35276 
35277 const AtcZoneInfo kAtcAllZoneHongkong = {
35278  kAtcZoneNameHongkong /*name*/,
35279  0x56d36560 /*zone_id*/,
35280  &kAtcAllZoneContext /*zone_context*/,
35281  6 /*num_eras*/,
35282  kAtcZoneEraAsia_Hong_Kong /*eras*/,
35283  &kAtcAllZoneAsia_Hong_Kong /*target_info*/,
35284 };
35285 
35286 //---------------------------------------------------------------------------
35287 // Link name: Iceland -> Africa/Abidjan
35288 //---------------------------------------------------------------------------
35289 
35290 static const char kAtcZoneNameIceland[] = "Iceland";
35291 
35292 const AtcZoneInfo kAtcAllZoneIceland = {
35293  kAtcZoneNameIceland /*name*/,
35294  0xe56a35b5 /*zone_id*/,
35295  &kAtcAllZoneContext /*zone_context*/,
35296  2 /*num_eras*/,
35297  kAtcZoneEraAfrica_Abidjan /*eras*/,
35298  &kAtcAllZoneAfrica_Abidjan /*target_info*/,
35299 };
35300 
35301 //---------------------------------------------------------------------------
35302 // Link name: Indian/Antananarivo -> Africa/Nairobi
35303 //---------------------------------------------------------------------------
35304 
35305 static const char kAtcZoneNameIndian_Antananarivo[] = "Indian/Antananarivo";
35306 
35307 const AtcZoneInfo kAtcAllZoneIndian_Antananarivo = {
35308  kAtcZoneNameIndian_Antananarivo /*name*/,
35309  0x9ebf5289 /*zone_id*/,
35310  &kAtcAllZoneContext /*zone_context*/,
35311  6 /*num_eras*/,
35312  kAtcZoneEraAfrica_Nairobi /*eras*/,
35313  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
35314 };
35315 
35316 //---------------------------------------------------------------------------
35317 // Link name: Indian/Christmas -> Asia/Bangkok
35318 //---------------------------------------------------------------------------
35319 
35320 static const char kAtcZoneNameIndian_Christmas[] = "Indian/Christmas";
35321 
35322 const AtcZoneInfo kAtcAllZoneIndian_Christmas = {
35323  kAtcZoneNameIndian_Christmas /*name*/,
35324  0x68c207d5 /*zone_id*/,
35325  &kAtcAllZoneContext /*zone_context*/,
35326  3 /*num_eras*/,
35327  kAtcZoneEraAsia_Bangkok /*eras*/,
35328  &kAtcAllZoneAsia_Bangkok /*target_info*/,
35329 };
35330 
35331 //---------------------------------------------------------------------------
35332 // Link name: Indian/Cocos -> Asia/Yangon
35333 //---------------------------------------------------------------------------
35334 
35335 static const char kAtcZoneNameIndian_Cocos[] = "Indian/Cocos";
35336 
35337 const AtcZoneInfo kAtcAllZoneIndian_Cocos = {
35338  kAtcZoneNameIndian_Cocos /*name*/,
35339  0x021e86de /*zone_id*/,
35340  &kAtcAllZoneContext /*zone_context*/,
35341  5 /*num_eras*/,
35342  kAtcZoneEraAsia_Yangon /*eras*/,
35343  &kAtcAllZoneAsia_Yangon /*target_info*/,
35344 };
35345 
35346 //---------------------------------------------------------------------------
35347 // Link name: Indian/Comoro -> Africa/Nairobi
35348 //---------------------------------------------------------------------------
35349 
35350 static const char kAtcZoneNameIndian_Comoro[] = "Indian/Comoro";
35351 
35352 const AtcZoneInfo kAtcAllZoneIndian_Comoro = {
35353  kAtcZoneNameIndian_Comoro /*name*/,
35354  0x45f4deb6 /*zone_id*/,
35355  &kAtcAllZoneContext /*zone_context*/,
35356  6 /*num_eras*/,
35357  kAtcZoneEraAfrica_Nairobi /*eras*/,
35358  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
35359 };
35360 
35361 //---------------------------------------------------------------------------
35362 // Link name: Indian/Kerguelen -> Indian/Maldives
35363 //---------------------------------------------------------------------------
35364 
35365 static const char kAtcZoneNameIndian_Kerguelen[] = "Indian/Kerguelen";
35366 
35367 const AtcZoneInfo kAtcAllZoneIndian_Kerguelen = {
35368  kAtcZoneNameIndian_Kerguelen /*name*/,
35369  0x4351b389 /*zone_id*/,
35370  &kAtcAllZoneContext /*zone_context*/,
35371  3 /*num_eras*/,
35372  kAtcZoneEraIndian_Maldives /*eras*/,
35373  &kAtcAllZoneIndian_Maldives /*target_info*/,
35374 };
35375 
35376 //---------------------------------------------------------------------------
35377 // Link name: Indian/Mahe -> Asia/Dubai
35378 //---------------------------------------------------------------------------
35379 
35380 static const char kAtcZoneNameIndian_Mahe[] = "Indian/Mahe";
35381 
35382 const AtcZoneInfo kAtcAllZoneIndian_Mahe = {
35383  kAtcZoneNameIndian_Mahe /*name*/,
35384  0x45e725e2 /*zone_id*/,
35385  &kAtcAllZoneContext /*zone_context*/,
35386  2 /*num_eras*/,
35387  kAtcZoneEraAsia_Dubai /*eras*/,
35388  &kAtcAllZoneAsia_Dubai /*target_info*/,
35389 };
35390 
35391 //---------------------------------------------------------------------------
35392 // Link name: Indian/Mayotte -> Africa/Nairobi
35393 //---------------------------------------------------------------------------
35394 
35395 static const char kAtcZoneNameIndian_Mayotte[] = "Indian/Mayotte";
35396 
35397 const AtcZoneInfo kAtcAllZoneIndian_Mayotte = {
35398  kAtcZoneNameIndian_Mayotte /*name*/,
35399  0xe6880bca /*zone_id*/,
35400  &kAtcAllZoneContext /*zone_context*/,
35401  6 /*num_eras*/,
35402  kAtcZoneEraAfrica_Nairobi /*eras*/,
35403  &kAtcAllZoneAfrica_Nairobi /*target_info*/,
35404 };
35405 
35406 //---------------------------------------------------------------------------
35407 // Link name: Indian/Reunion -> Asia/Dubai
35408 //---------------------------------------------------------------------------
35409 
35410 static const char kAtcZoneNameIndian_Reunion[] = "Indian/Reunion";
35411 
35412 const AtcZoneInfo kAtcAllZoneIndian_Reunion = {
35413  kAtcZoneNameIndian_Reunion /*name*/,
35414  0x7076c047 /*zone_id*/,
35415  &kAtcAllZoneContext /*zone_context*/,
35416  2 /*num_eras*/,
35417  kAtcZoneEraAsia_Dubai /*eras*/,
35418  &kAtcAllZoneAsia_Dubai /*target_info*/,
35419 };
35420 
35421 //---------------------------------------------------------------------------
35422 // Link name: Iran -> Asia/Tehran
35423 //---------------------------------------------------------------------------
35424 
35425 static const char kAtcZoneNameIran[] = "Iran";
35426 
35427 const AtcZoneInfo kAtcAllZoneIran = {
35428  kAtcZoneNameIran /*name*/,
35429  0x7c87090f /*zone_id*/,
35430  &kAtcAllZoneContext /*zone_context*/,
35431  5 /*num_eras*/,
35432  kAtcZoneEraAsia_Tehran /*eras*/,
35433  &kAtcAllZoneAsia_Tehran /*target_info*/,
35434 };
35435 
35436 //---------------------------------------------------------------------------
35437 // Link name: Israel -> Asia/Jerusalem
35438 //---------------------------------------------------------------------------
35439 
35440 static const char kAtcZoneNameIsrael[] = "Israel";
35441 
35442 const AtcZoneInfo kAtcAllZoneIsrael = {
35443  kAtcZoneNameIsrael /*name*/,
35444  0xba88c9e5 /*zone_id*/,
35445  &kAtcAllZoneContext /*zone_context*/,
35446  3 /*num_eras*/,
35447  kAtcZoneEraAsia_Jerusalem /*eras*/,
35448  &kAtcAllZoneAsia_Jerusalem /*target_info*/,
35449 };
35450 
35451 //---------------------------------------------------------------------------
35452 // Link name: Jamaica -> America/Jamaica
35453 //---------------------------------------------------------------------------
35454 
35455 static const char kAtcZoneNameJamaica[] = "Jamaica";
35456 
35457 const AtcZoneInfo kAtcAllZoneJamaica = {
35458  kAtcZoneNameJamaica /*name*/,
35459  0x2e44fdab /*zone_id*/,
35460  &kAtcAllZoneContext /*zone_context*/,
35461  5 /*num_eras*/,
35462  kAtcZoneEraAmerica_Jamaica /*eras*/,
35463  &kAtcAllZoneAmerica_Jamaica /*target_info*/,
35464 };
35465 
35466 //---------------------------------------------------------------------------
35467 // Link name: Japan -> Asia/Tokyo
35468 //---------------------------------------------------------------------------
35469 
35470 static const char kAtcZoneNameJapan[] = "Japan";
35471 
35472 const AtcZoneInfo kAtcAllZoneJapan = {
35473  kAtcZoneNameJapan /*name*/,
35474  0x0d712f8f /*zone_id*/,
35475  &kAtcAllZoneContext /*zone_context*/,
35476  2 /*num_eras*/,
35477  kAtcZoneEraAsia_Tokyo /*eras*/,
35478  &kAtcAllZoneAsia_Tokyo /*target_info*/,
35479 };
35480 
35481 //---------------------------------------------------------------------------
35482 // Link name: Kwajalein -> Pacific/Kwajalein
35483 //---------------------------------------------------------------------------
35484 
35485 static const char kAtcZoneNameKwajalein[] = "Kwajalein";
35486 
35487 const AtcZoneInfo kAtcAllZoneKwajalein = {
35488  kAtcZoneNameKwajalein /*name*/,
35489  0x0e57afbb /*zone_id*/,
35490  &kAtcAllZoneContext /*zone_context*/,
35491  7 /*num_eras*/,
35492  kAtcZoneEraPacific_Kwajalein /*eras*/,
35493  &kAtcAllZonePacific_Kwajalein /*target_info*/,
35494 };
35495 
35496 //---------------------------------------------------------------------------
35497 // Link name: Libya -> Africa/Tripoli
35498 //---------------------------------------------------------------------------
35499 
35500 static const char kAtcZoneNameLibya[] = "Libya";
35501 
35502 const AtcZoneInfo kAtcAllZoneLibya = {
35503  kAtcZoneNameLibya /*name*/,
35504  0x0d998b16 /*zone_id*/,
35505  &kAtcAllZoneContext /*zone_context*/,
35506  9 /*num_eras*/,
35507  kAtcZoneEraAfrica_Tripoli /*eras*/,
35508  &kAtcAllZoneAfrica_Tripoli /*target_info*/,
35509 };
35510 
35511 //---------------------------------------------------------------------------
35512 // Link name: Mexico/BajaNorte -> America/Tijuana
35513 //---------------------------------------------------------------------------
35514 
35515 static const char kAtcZoneNameMexico_BajaNorte[] = "Mexico/BajaNorte";
35516 
35517 const AtcZoneInfo kAtcAllZoneMexico_BajaNorte = {
35518  kAtcZoneNameMexico_BajaNorte /*name*/,
35519  0xfcf7150f /*zone_id*/,
35520  &kAtcAllZoneContext /*zone_context*/,
35521  19 /*num_eras*/,
35522  kAtcZoneEraAmerica_Tijuana /*eras*/,
35523  &kAtcAllZoneAmerica_Tijuana /*target_info*/,
35524 };
35525 
35526 //---------------------------------------------------------------------------
35527 // Link name: Mexico/BajaSur -> America/Mazatlan
35528 //---------------------------------------------------------------------------
35529 
35530 static const char kAtcZoneNameMexico_BajaSur[] = "Mexico/BajaSur";
35531 
35532 const AtcZoneInfo kAtcAllZoneMexico_BajaSur = {
35533  kAtcZoneNameMexico_BajaSur /*name*/,
35534  0x08ee3641 /*zone_id*/,
35535  &kAtcAllZoneContext /*zone_context*/,
35536  8 /*num_eras*/,
35537  kAtcZoneEraAmerica_Mazatlan /*eras*/,
35538  &kAtcAllZoneAmerica_Mazatlan /*target_info*/,
35539 };
35540 
35541 //---------------------------------------------------------------------------
35542 // Link name: Mexico/General -> America/Mexico_City
35543 //---------------------------------------------------------------------------
35544 
35545 static const char kAtcZoneNameMexico_General[] = "Mexico/General";
35546 
35547 const AtcZoneInfo kAtcAllZoneMexico_General = {
35548  kAtcZoneNameMexico_General /*name*/,
35549  0x93711d57 /*zone_id*/,
35550  &kAtcAllZoneContext /*zone_context*/,
35551  7 /*num_eras*/,
35552  kAtcZoneEraAmerica_Mexico_City /*eras*/,
35553  &kAtcAllZoneAmerica_Mexico_City /*target_info*/,
35554 };
35555 
35556 //---------------------------------------------------------------------------
35557 // Link name: NZ -> Pacific/Auckland
35558 //---------------------------------------------------------------------------
35559 
35560 static const char kAtcZoneNameNZ[] = "NZ";
35561 
35562 const AtcZoneInfo kAtcAllZoneNZ = {
35563  kAtcZoneNameNZ /*name*/,
35564  0x005974ad /*zone_id*/,
35565  &kAtcAllZoneContext /*zone_context*/,
35566  3 /*num_eras*/,
35567  kAtcZoneEraPacific_Auckland /*eras*/,
35568  &kAtcAllZonePacific_Auckland /*target_info*/,
35569 };
35570 
35571 //---------------------------------------------------------------------------
35572 // Link name: NZ-CHAT -> Pacific/Chatham
35573 //---------------------------------------------------------------------------
35574 
35575 static const char kAtcZoneNameNZ_CHAT[] = "NZ-CHAT";
35576 
35577 const AtcZoneInfo kAtcAllZoneNZ_CHAT = {
35578  kAtcZoneNameNZ_CHAT /*name*/,
35579  0x4d42afda /*zone_id*/,
35580  &kAtcAllZoneContext /*zone_context*/,
35581  3 /*num_eras*/,
35582  kAtcZoneEraPacific_Chatham /*eras*/,
35583  &kAtcAllZonePacific_Chatham /*target_info*/,
35584 };
35585 
35586 //---------------------------------------------------------------------------
35587 // Link name: Navajo -> America/Denver
35588 //---------------------------------------------------------------------------
35589 
35590 static const char kAtcZoneNameNavajo[] = "Navajo";
35591 
35592 const AtcZoneInfo kAtcAllZoneNavajo = {
35593  kAtcZoneNameNavajo /*name*/,
35594  0xc4ef0e24 /*zone_id*/,
35595  &kAtcAllZoneContext /*zone_context*/,
35596  6 /*num_eras*/,
35597  kAtcZoneEraAmerica_Denver /*eras*/,
35598  &kAtcAllZoneAmerica_Denver /*target_info*/,
35599 };
35600 
35601 //---------------------------------------------------------------------------
35602 // Link name: PRC -> Asia/Shanghai
35603 //---------------------------------------------------------------------------
35604 
35605 static const char kAtcZoneNamePRC[] = "PRC";
35606 
35607 const AtcZoneInfo kAtcAllZonePRC = {
35608  kAtcZoneNamePRC /*name*/,
35609  0x0b88120a /*zone_id*/,
35610  &kAtcAllZoneContext /*zone_context*/,
35611  3 /*num_eras*/,
35612  kAtcZoneEraAsia_Shanghai /*eras*/,
35613  &kAtcAllZoneAsia_Shanghai /*target_info*/,
35614 };
35615 
35616 //---------------------------------------------------------------------------
35617 // Link name: Pacific/Chuuk -> Pacific/Port_Moresby
35618 //---------------------------------------------------------------------------
35619 
35620 static const char kAtcZoneNamePacific_Chuuk[] = "Pacific/Chuuk";
35621 
35622 const AtcZoneInfo kAtcAllZonePacific_Chuuk = {
35623  kAtcZoneNamePacific_Chuuk /*name*/,
35624  0x8a090b23 /*zone_id*/,
35625  &kAtcAllZoneContext /*zone_context*/,
35626  3 /*num_eras*/,
35627  kAtcZoneEraPacific_Port_Moresby /*eras*/,
35628  &kAtcAllZonePacific_Port_Moresby /*target_info*/,
35629 };
35630 
35631 //---------------------------------------------------------------------------
35632 // Link name: Pacific/Enderbury -> Pacific/Kanton
35633 //---------------------------------------------------------------------------
35634 
35635 static const char kAtcZoneNamePacific_Enderbury[] = "Pacific/Enderbury";
35636 
35637 const AtcZoneInfo kAtcAllZonePacific_Enderbury = {
35638  kAtcZoneNamePacific_Enderbury /*name*/,
35639  0x61599a93 /*zone_id*/,
35640  &kAtcAllZoneContext /*zone_context*/,
35641  4 /*num_eras*/,
35642  kAtcZoneEraPacific_Kanton /*eras*/,
35643  &kAtcAllZonePacific_Kanton /*target_info*/,
35644 };
35645 
35646 //---------------------------------------------------------------------------
35647 // Link name: Pacific/Funafuti -> Pacific/Tarawa
35648 //---------------------------------------------------------------------------
35649 
35650 static const char kAtcZoneNamePacific_Funafuti[] = "Pacific/Funafuti";
35651 
35652 const AtcZoneInfo kAtcAllZonePacific_Funafuti = {
35653  kAtcZoneNamePacific_Funafuti /*name*/,
35654  0xdb402d65 /*zone_id*/,
35655  &kAtcAllZoneContext /*zone_context*/,
35656  2 /*num_eras*/,
35657  kAtcZoneEraPacific_Tarawa /*eras*/,
35658  &kAtcAllZonePacific_Tarawa /*target_info*/,
35659 };
35660 
35661 //---------------------------------------------------------------------------
35662 // Link name: Pacific/Johnston -> Pacific/Honolulu
35663 //---------------------------------------------------------------------------
35664 
35665 static const char kAtcZoneNamePacific_Johnston[] = "Pacific/Johnston";
35666 
35667 const AtcZoneInfo kAtcAllZonePacific_Johnston = {
35668  kAtcZoneNamePacific_Johnston /*name*/,
35669  0xb15d7b36 /*zone_id*/,
35670  &kAtcAllZoneContext /*zone_context*/,
35671  5 /*num_eras*/,
35672  kAtcZoneEraPacific_Honolulu /*eras*/,
35673  &kAtcAllZonePacific_Honolulu /*target_info*/,
35674 };
35675 
35676 //---------------------------------------------------------------------------
35677 // Link name: Pacific/Majuro -> Pacific/Tarawa
35678 //---------------------------------------------------------------------------
35679 
35680 static const char kAtcZoneNamePacific_Majuro[] = "Pacific/Majuro";
35681 
35682 const AtcZoneInfo kAtcAllZonePacific_Majuro = {
35683  kAtcZoneNamePacific_Majuro /*name*/,
35684  0xe1f95371 /*zone_id*/,
35685  &kAtcAllZoneContext /*zone_context*/,
35686  2 /*num_eras*/,
35687  kAtcZoneEraPacific_Tarawa /*eras*/,
35688  &kAtcAllZonePacific_Tarawa /*target_info*/,
35689 };
35690 
35691 //---------------------------------------------------------------------------
35692 // Link name: Pacific/Midway -> Pacific/Pago_Pago
35693 //---------------------------------------------------------------------------
35694 
35695 static const char kAtcZoneNamePacific_Midway[] = "Pacific/Midway";
35696 
35697 const AtcZoneInfo kAtcAllZonePacific_Midway = {
35698  kAtcZoneNamePacific_Midway /*name*/,
35699  0xe286d38e /*zone_id*/,
35700  &kAtcAllZoneContext /*zone_context*/,
35701  3 /*num_eras*/,
35702  kAtcZoneEraPacific_Pago_Pago /*eras*/,
35703  &kAtcAllZonePacific_Pago_Pago /*target_info*/,
35704 };
35705 
35706 //---------------------------------------------------------------------------
35707 // Link name: Pacific/Pohnpei -> Pacific/Guadalcanal
35708 //---------------------------------------------------------------------------
35709 
35710 static const char kAtcZoneNamePacific_Pohnpei[] = "Pacific/Pohnpei";
35711 
35712 const AtcZoneInfo kAtcAllZonePacific_Pohnpei = {
35713  kAtcZoneNamePacific_Pohnpei /*name*/,
35714  0x28929f96 /*zone_id*/,
35715  &kAtcAllZoneContext /*zone_context*/,
35716  2 /*num_eras*/,
35717  kAtcZoneEraPacific_Guadalcanal /*eras*/,
35718  &kAtcAllZonePacific_Guadalcanal /*target_info*/,
35719 };
35720 
35721 //---------------------------------------------------------------------------
35722 // Link name: Pacific/Ponape -> Pacific/Guadalcanal
35723 //---------------------------------------------------------------------------
35724 
35725 static const char kAtcZoneNamePacific_Ponape[] = "Pacific/Ponape";
35726 
35727 const AtcZoneInfo kAtcAllZonePacific_Ponape = {
35728  kAtcZoneNamePacific_Ponape /*name*/,
35729  0xe9f80086 /*zone_id*/,
35730  &kAtcAllZoneContext /*zone_context*/,
35731  2 /*num_eras*/,
35732  kAtcZoneEraPacific_Guadalcanal /*eras*/,
35733  &kAtcAllZonePacific_Guadalcanal /*target_info*/,
35734 };
35735 
35736 //---------------------------------------------------------------------------
35737 // Link name: Pacific/Saipan -> Pacific/Guam
35738 //---------------------------------------------------------------------------
35739 
35740 static const char kAtcZoneNamePacific_Saipan[] = "Pacific/Saipan";
35741 
35742 const AtcZoneInfo kAtcAllZonePacific_Saipan = {
35743  kAtcZoneNamePacific_Saipan /*name*/,
35744  0xeff7a35f /*zone_id*/,
35745  &kAtcAllZoneContext /*zone_context*/,
35746  6 /*num_eras*/,
35747  kAtcZoneEraPacific_Guam /*eras*/,
35748  &kAtcAllZonePacific_Guam /*target_info*/,
35749 };
35750 
35751 //---------------------------------------------------------------------------
35752 // Link name: Pacific/Samoa -> Pacific/Pago_Pago
35753 //---------------------------------------------------------------------------
35754 
35755 static const char kAtcZoneNamePacific_Samoa[] = "Pacific/Samoa";
35756 
35757 const AtcZoneInfo kAtcAllZonePacific_Samoa = {
35758  kAtcZoneNamePacific_Samoa /*name*/,
35759  0x8b2699b4 /*zone_id*/,
35760  &kAtcAllZoneContext /*zone_context*/,
35761  3 /*num_eras*/,
35762  kAtcZoneEraPacific_Pago_Pago /*eras*/,
35763  &kAtcAllZonePacific_Pago_Pago /*target_info*/,
35764 };
35765 
35766 //---------------------------------------------------------------------------
35767 // Link name: Pacific/Truk -> Pacific/Port_Moresby
35768 //---------------------------------------------------------------------------
35769 
35770 static const char kAtcZoneNamePacific_Truk[] = "Pacific/Truk";
35771 
35772 const AtcZoneInfo kAtcAllZonePacific_Truk = {
35773  kAtcZoneNamePacific_Truk /*name*/,
35774  0x234010a9 /*zone_id*/,
35775  &kAtcAllZoneContext /*zone_context*/,
35776  3 /*num_eras*/,
35777  kAtcZoneEraPacific_Port_Moresby /*eras*/,
35778  &kAtcAllZonePacific_Port_Moresby /*target_info*/,
35779 };
35780 
35781 //---------------------------------------------------------------------------
35782 // Link name: Pacific/Wake -> Pacific/Tarawa
35783 //---------------------------------------------------------------------------
35784 
35785 static const char kAtcZoneNamePacific_Wake[] = "Pacific/Wake";
35786 
35787 const AtcZoneInfo kAtcAllZonePacific_Wake = {
35788  kAtcZoneNamePacific_Wake /*name*/,
35789  0x23416c2b /*zone_id*/,
35790  &kAtcAllZoneContext /*zone_context*/,
35791  2 /*num_eras*/,
35792  kAtcZoneEraPacific_Tarawa /*eras*/,
35793  &kAtcAllZonePacific_Tarawa /*target_info*/,
35794 };
35795 
35796 //---------------------------------------------------------------------------
35797 // Link name: Pacific/Wallis -> Pacific/Tarawa
35798 //---------------------------------------------------------------------------
35799 
35800 static const char kAtcZoneNamePacific_Wallis[] = "Pacific/Wallis";
35801 
35802 const AtcZoneInfo kAtcAllZonePacific_Wallis = {
35803  kAtcZoneNamePacific_Wallis /*name*/,
35804  0xf94ddb0f /*zone_id*/,
35805  &kAtcAllZoneContext /*zone_context*/,
35806  2 /*num_eras*/,
35807  kAtcZoneEraPacific_Tarawa /*eras*/,
35808  &kAtcAllZonePacific_Tarawa /*target_info*/,
35809 };
35810 
35811 //---------------------------------------------------------------------------
35812 // Link name: Pacific/Yap -> Pacific/Port_Moresby
35813 //---------------------------------------------------------------------------
35814 
35815 static const char kAtcZoneNamePacific_Yap[] = "Pacific/Yap";
35816 
35817 const AtcZoneInfo kAtcAllZonePacific_Yap = {
35818  kAtcZoneNamePacific_Yap /*name*/,
35819  0xbb40138d /*zone_id*/,
35820  &kAtcAllZoneContext /*zone_context*/,
35821  3 /*num_eras*/,
35822  kAtcZoneEraPacific_Port_Moresby /*eras*/,
35823  &kAtcAllZonePacific_Port_Moresby /*target_info*/,
35824 };
35825 
35826 //---------------------------------------------------------------------------
35827 // Link name: Poland -> Europe/Warsaw
35828 //---------------------------------------------------------------------------
35829 
35830 static const char kAtcZoneNamePoland[] = "Poland";
35831 
35832 const AtcZoneInfo kAtcAllZonePoland = {
35833  kAtcZoneNamePoland /*name*/,
35834  0xca913b23 /*zone_id*/,
35835  &kAtcAllZoneContext /*zone_context*/,
35836  9 /*num_eras*/,
35837  kAtcZoneEraEurope_Warsaw /*eras*/,
35838  &kAtcAllZoneEurope_Warsaw /*target_info*/,
35839 };
35840 
35841 //---------------------------------------------------------------------------
35842 // Link name: Portugal -> Europe/Lisbon
35843 //---------------------------------------------------------------------------
35844 
35845 static const char kAtcZoneNamePortugal[] = "Portugal";
35846 
35847 const AtcZoneInfo kAtcAllZonePortugal = {
35848  kAtcZoneNamePortugal /*name*/,
35849  0xc3274593 /*zone_id*/,
35850  &kAtcAllZoneContext /*zone_context*/,
35851  8 /*num_eras*/,
35852  kAtcZoneEraEurope_Lisbon /*eras*/,
35853  &kAtcAllZoneEurope_Lisbon /*target_info*/,
35854 };
35855 
35856 //---------------------------------------------------------------------------
35857 // Link name: ROC -> Asia/Taipei
35858 //---------------------------------------------------------------------------
35859 
35860 static const char kAtcZoneNameROC[] = "ROC";
35861 
35862 const AtcZoneInfo kAtcAllZoneROC = {
35863  kAtcZoneNameROC /*name*/,
35864  0x0b881a29 /*zone_id*/,
35865  &kAtcAllZoneContext /*zone_context*/,
35866  4 /*num_eras*/,
35867  kAtcZoneEraAsia_Taipei /*eras*/,
35868  &kAtcAllZoneAsia_Taipei /*target_info*/,
35869 };
35870 
35871 //---------------------------------------------------------------------------
35872 // Link name: ROK -> Asia/Seoul
35873 //---------------------------------------------------------------------------
35874 
35875 static const char kAtcZoneNameROK[] = "ROK";
35876 
35877 const AtcZoneInfo kAtcAllZoneROK = {
35878  kAtcZoneNameROK /*name*/,
35879  0x0b881a31 /*zone_id*/,
35880  &kAtcAllZoneContext /*zone_context*/,
35881  6 /*num_eras*/,
35882  kAtcZoneEraAsia_Seoul /*eras*/,
35883  &kAtcAllZoneAsia_Seoul /*target_info*/,
35884 };
35885 
35886 //---------------------------------------------------------------------------
35887 // Link name: Singapore -> Asia/Singapore
35888 //---------------------------------------------------------------------------
35889 
35890 static const char kAtcZoneNameSingapore[] = "Singapore";
35891 
35892 const AtcZoneInfo kAtcAllZoneSingapore = {
35893  kAtcZoneNameSingapore /*name*/,
35894  0xa8598c8d /*zone_id*/,
35895  &kAtcAllZoneContext /*zone_context*/,
35896  9 /*num_eras*/,
35897  kAtcZoneEraAsia_Singapore /*eras*/,
35898  &kAtcAllZoneAsia_Singapore /*target_info*/,
35899 };
35900 
35901 //---------------------------------------------------------------------------
35902 // Link name: Turkey -> Europe/Istanbul
35903 //---------------------------------------------------------------------------
35904 
35905 static const char kAtcZoneNameTurkey[] = "Turkey";
35906 
35907 const AtcZoneInfo kAtcAllZoneTurkey = {
35908  kAtcZoneNameTurkey /*name*/,
35909  0xd455e469 /*zone_id*/,
35910  &kAtcAllZoneContext /*zone_context*/,
35911  13 /*num_eras*/,
35912  kAtcZoneEraEurope_Istanbul /*eras*/,
35913  &kAtcAllZoneEurope_Istanbul /*target_info*/,
35914 };
35915 
35916 //---------------------------------------------------------------------------
35917 // Link name: UCT -> Etc/UTC
35918 //---------------------------------------------------------------------------
35919 
35920 static const char kAtcZoneNameUCT[] = "UCT";
35921 
35922 const AtcZoneInfo kAtcAllZoneUCT = {
35923  kAtcZoneNameUCT /*name*/,
35924  0x0b882571 /*zone_id*/,
35925  &kAtcAllZoneContext /*zone_context*/,
35926  1 /*num_eras*/,
35927  kAtcZoneEraEtc_UTC /*eras*/,
35928  &kAtcAllZoneEtc_UTC /*target_info*/,
35929 };
35930 
35931 //---------------------------------------------------------------------------
35932 // Link name: US/Alaska -> America/Anchorage
35933 //---------------------------------------------------------------------------
35934 
35935 static const char kAtcZoneNameUS_Alaska[] = "US/Alaska";
35936 
35937 const AtcZoneInfo kAtcAllZoneUS_Alaska = {
35938  kAtcZoneNameUS_Alaska /*name*/,
35939  0xfa300bc9 /*zone_id*/,
35940  &kAtcAllZoneContext /*zone_context*/,
35941  8 /*num_eras*/,
35942  kAtcZoneEraAmerica_Anchorage /*eras*/,
35943  &kAtcAllZoneAmerica_Anchorage /*target_info*/,
35944 };
35945 
35946 //---------------------------------------------------------------------------
35947 // Link name: US/Aleutian -> America/Adak
35948 //---------------------------------------------------------------------------
35949 
35950 static const char kAtcZoneNameUS_Aleutian[] = "US/Aleutian";
35951 
35952 const AtcZoneInfo kAtcAllZoneUS_Aleutian = {
35953  kAtcZoneNameUS_Aleutian /*name*/,
35954  0x4fe013ef /*zone_id*/,
35955  &kAtcAllZoneContext /*zone_context*/,
35956  9 /*num_eras*/,
35957  kAtcZoneEraAmerica_Adak /*eras*/,
35958  &kAtcAllZoneAmerica_Adak /*target_info*/,
35959 };
35960 
35961 //---------------------------------------------------------------------------
35962 // Link name: US/Arizona -> America/Phoenix
35963 //---------------------------------------------------------------------------
35964 
35965 static const char kAtcZoneNameUS_Arizona[] = "US/Arizona";
35966 
35967 const AtcZoneInfo kAtcAllZoneUS_Arizona = {
35968  kAtcZoneNameUS_Arizona /*name*/,
35969  0x4ec52670 /*zone_id*/,
35970  &kAtcAllZoneContext /*zone_context*/,
35971  7 /*num_eras*/,
35972  kAtcZoneEraAmerica_Phoenix /*eras*/,
35973  &kAtcAllZoneAmerica_Phoenix /*target_info*/,
35974 };
35975 
35976 //---------------------------------------------------------------------------
35977 // Link name: US/Central -> America/Chicago
35978 //---------------------------------------------------------------------------
35979 
35980 static const char kAtcZoneNameUS_Central[] = "US/Central";
35981 
35982 const AtcZoneInfo kAtcAllZoneUS_Central = {
35983  kAtcZoneNameUS_Central /*name*/,
35984  0xcabdcb25 /*zone_id*/,
35985  &kAtcAllZoneContext /*zone_context*/,
35986  8 /*num_eras*/,
35987  kAtcZoneEraAmerica_Chicago /*eras*/,
35988  &kAtcAllZoneAmerica_Chicago /*target_info*/,
35989 };
35990 
35991 //---------------------------------------------------------------------------
35992 // Link name: US/East-Indiana -> America/Indiana/Indianapolis
35993 //---------------------------------------------------------------------------
35994 
35995 static const char kAtcZoneNameUS_East_Indiana[] = "US/East-Indiana";
35996 
35997 const AtcZoneInfo kAtcAllZoneUS_East_Indiana = {
35998  kAtcZoneNameUS_East_Indiana /*name*/,
35999  0x6dcf558a /*zone_id*/,
36000  &kAtcAllZoneContext /*zone_context*/,
36001  11 /*num_eras*/,
36002  kAtcZoneEraAmerica_Indiana_Indianapolis /*eras*/,
36003  &kAtcAllZoneAmerica_Indiana_Indianapolis /*target_info*/,
36004 };
36005 
36006 //---------------------------------------------------------------------------
36007 // Link name: US/Eastern -> America/New_York
36008 //---------------------------------------------------------------------------
36009 
36010 static const char kAtcZoneNameUS_Eastern[] = "US/Eastern";
36011 
36012 const AtcZoneInfo kAtcAllZoneUS_Eastern = {
36013  kAtcZoneNameUS_Eastern /*name*/,
36014  0x5bb7e78e /*zone_id*/,
36015  &kAtcAllZoneContext /*zone_context*/,
36016  6 /*num_eras*/,
36017  kAtcZoneEraAmerica_New_York /*eras*/,
36018  &kAtcAllZoneAmerica_New_York /*target_info*/,
36019 };
36020 
36021 //---------------------------------------------------------------------------
36022 // Link name: US/Hawaii -> Pacific/Honolulu
36023 //---------------------------------------------------------------------------
36024 
36025 static const char kAtcZoneNameUS_Hawaii[] = "US/Hawaii";
36026 
36027 const AtcZoneInfo kAtcAllZoneUS_Hawaii = {
36028  kAtcZoneNameUS_Hawaii /*name*/,
36029  0x09c8de2f /*zone_id*/,
36030  &kAtcAllZoneContext /*zone_context*/,
36031  5 /*num_eras*/,
36032  kAtcZoneEraPacific_Honolulu /*eras*/,
36033  &kAtcAllZonePacific_Honolulu /*target_info*/,
36034 };
36035 
36036 //---------------------------------------------------------------------------
36037 // Link name: US/Indiana-Starke -> America/Indiana/Knox
36038 //---------------------------------------------------------------------------
36039 
36040 static const char kAtcZoneNameUS_Indiana_Starke[] = "US/Indiana-Starke";
36041 
36042 const AtcZoneInfo kAtcAllZoneUS_Indiana_Starke = {
36043  kAtcZoneNameUS_Indiana_Starke /*name*/,
36044  0x67977be7 /*zone_id*/,
36045  &kAtcAllZoneContext /*zone_context*/,
36046  7 /*num_eras*/,
36047  kAtcZoneEraAmerica_Indiana_Knox /*eras*/,
36048  &kAtcAllZoneAmerica_Indiana_Knox /*target_info*/,
36049 };
36050 
36051 //---------------------------------------------------------------------------
36052 // Link name: US/Michigan -> America/Detroit
36053 //---------------------------------------------------------------------------
36054 
36055 static const char kAtcZoneNameUS_Michigan[] = "US/Michigan";
36056 
36057 const AtcZoneInfo kAtcAllZoneUS_Michigan = {
36058  kAtcZoneNameUS_Michigan /*name*/,
36059  0x766bb7bc /*zone_id*/,
36060  &kAtcAllZoneContext /*zone_context*/,
36061  10 /*num_eras*/,
36062  kAtcZoneEraAmerica_Detroit /*eras*/,
36063  &kAtcAllZoneAmerica_Detroit /*target_info*/,
36064 };
36065 
36066 //---------------------------------------------------------------------------
36067 // Link name: US/Mountain -> America/Denver
36068 //---------------------------------------------------------------------------
36069 
36070 static const char kAtcZoneNameUS_Mountain[] = "US/Mountain";
36071 
36072 const AtcZoneInfo kAtcAllZoneUS_Mountain = {
36073  kAtcZoneNameUS_Mountain /*name*/,
36074  0x6eb88247 /*zone_id*/,
36075  &kAtcAllZoneContext /*zone_context*/,
36076  6 /*num_eras*/,
36077  kAtcZoneEraAmerica_Denver /*eras*/,
36078  &kAtcAllZoneAmerica_Denver /*target_info*/,
36079 };
36080 
36081 //---------------------------------------------------------------------------
36082 // Link name: US/Pacific -> America/Los_Angeles
36083 //---------------------------------------------------------------------------
36084 
36085 static const char kAtcZoneNameUS_Pacific[] = "US/Pacific";
36086 
36087 const AtcZoneInfo kAtcAllZoneUS_Pacific = {
36088  kAtcZoneNameUS_Pacific /*name*/,
36089  0xa950f6ab /*zone_id*/,
36090  &kAtcAllZoneContext /*zone_context*/,
36091  4 /*num_eras*/,
36092  kAtcZoneEraAmerica_Los_Angeles /*eras*/,
36093  &kAtcAllZoneAmerica_Los_Angeles /*target_info*/,
36094 };
36095 
36096 //---------------------------------------------------------------------------
36097 // Link name: US/Samoa -> Pacific/Pago_Pago
36098 //---------------------------------------------------------------------------
36099 
36100 static const char kAtcZoneNameUS_Samoa[] = "US/Samoa";
36101 
36102 const AtcZoneInfo kAtcAllZoneUS_Samoa = {
36103  kAtcZoneNameUS_Samoa /*name*/,
36104  0x566821cd /*zone_id*/,
36105  &kAtcAllZoneContext /*zone_context*/,
36106  3 /*num_eras*/,
36107  kAtcZoneEraPacific_Pago_Pago /*eras*/,
36108  &kAtcAllZonePacific_Pago_Pago /*target_info*/,
36109 };
36110 
36111 //---------------------------------------------------------------------------
36112 // Link name: UTC -> Etc/UTC
36113 //---------------------------------------------------------------------------
36114 
36115 static const char kAtcZoneNameUTC[] = "UTC";
36116 
36117 const AtcZoneInfo kAtcAllZoneUTC = {
36118  kAtcZoneNameUTC /*name*/,
36119  0x0b882791 /*zone_id*/,
36120  &kAtcAllZoneContext /*zone_context*/,
36121  1 /*num_eras*/,
36122  kAtcZoneEraEtc_UTC /*eras*/,
36123  &kAtcAllZoneEtc_UTC /*target_info*/,
36124 };
36125 
36126 //---------------------------------------------------------------------------
36127 // Link name: Universal -> Etc/UTC
36128 //---------------------------------------------------------------------------
36129 
36130 static const char kAtcZoneNameUniversal[] = "Universal";
36131 
36132 const AtcZoneInfo kAtcAllZoneUniversal = {
36133  kAtcZoneNameUniversal /*name*/,
36134  0xd0ff523e /*zone_id*/,
36135  &kAtcAllZoneContext /*zone_context*/,
36136  1 /*num_eras*/,
36137  kAtcZoneEraEtc_UTC /*eras*/,
36138  &kAtcAllZoneEtc_UTC /*target_info*/,
36139 };
36140 
36141 //---------------------------------------------------------------------------
36142 // Link name: W-SU -> Europe/Moscow
36143 //---------------------------------------------------------------------------
36144 
36145 static const char kAtcZoneNameW_SU[] = "W-SU";
36146 
36147 const AtcZoneInfo kAtcAllZoneW_SU = {
36148  kAtcZoneNameW_SU /*name*/,
36149  0x7c8d8ef1 /*zone_id*/,
36150  &kAtcAllZoneContext /*zone_context*/,
36151  11 /*num_eras*/,
36152  kAtcZoneEraEurope_Moscow /*eras*/,
36153  &kAtcAllZoneEurope_Moscow /*target_info*/,
36154 };
36155 
36156 //---------------------------------------------------------------------------
36157 // Link name: Zulu -> Etc/UTC
36158 //---------------------------------------------------------------------------
36159 
36160 static const char kAtcZoneNameZulu[] = "Zulu";
36161 
36162 const AtcZoneInfo kAtcAllZoneZulu = {
36163  kAtcZoneNameZulu /*name*/,
36164  0x7c9069b5 /*zone_id*/,
36165  &kAtcAllZoneContext /*zone_context*/,
36166  1 /*num_eras*/,
36167  kAtcZoneEraEtc_UTC /*eras*/,
36168  &kAtcAllZoneEtc_UTC /*target_info*/,
36169 };
36170 
36171 
Information about the zone database.
Definition: zone_info.h:200
An entry in ZoneInfo which describes which ZonePolicy was being followed during a particular time per...
Definition: zone_info.h:242
Representation of a given time zone, implemented as an array of ZoneEra records.
Definition: zone_info.h:381